@enervance/insight-cim-model 0.0.61 → 0.0.63
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/analysis/analysis-neplan/digi-ons.d.ts +55 -3
- package/dist/analysis/analysis-neplan/digi-ons.js +108 -29
- package/dist/analysis/analysis-neplan/digi-ons.js.map +1 -1
- package/dist/config/load.confings.d.ts +11 -0
- package/dist/config/load.confings.js +362 -0
- package/dist/config/load.confings.js.map +1 -0
- package/dist/config/westnetz-neplan/callbacks/cb-connectivitynode.d.ts +9 -9
- package/dist/config/westnetz-neplan/callbacks/cb-connectivitynode.js +11 -44
- package/dist/config/westnetz-neplan/callbacks/cb-connectivitynode.js.map +1 -1
- package/dist/config/westnetz-neplan/callbacks/cb-psr.d.ts +3 -3
- package/dist/config/westnetz-neplan/callbacks/cb-psr.js +9 -7
- package/dist/config/westnetz-neplan/callbacks/cb-psr.js.map +1 -1
- package/dist/config/westnetz-neplan/callbacks/cb-wnenergyconsumer.d.ts +2 -2
- package/dist/config/westnetz-neplan/callbacks/cb-wnenergyconsumer.js +2 -0
- package/dist/config/westnetz-neplan/callbacks/cb-wnenergyconsumer.js.map +1 -1
- package/dist/config/westnetz-neplan/property-handler-westenergy.config.d.ts +19 -19
- package/dist/constants/cim-asset-types.d.ts +20 -0
- package/dist/constants/cim-asset-types.js +36 -14
- package/dist/constants/cim-asset-types.js.map +1 -1
- package/dist/constants/cim-class-names.d.ts +33 -4
- package/dist/constants/cim-class-names.js +192 -128
- package/dist/constants/cim-class-names.js.map +1 -1
- package/dist/constants/cim-constants.js +3 -3
- package/dist/constants/cim-constants.js.map +1 -1
- package/dist/constants/rdf-xml.js +59 -59
- package/dist/constants/rdf-xml.js.map +1 -1
- package/dist/converter/PSDM/ConverterPowerSystemDataModel.d.ts +46 -2
- package/dist/converter/PSDM/ConverterPowerSystemDataModel.js +118 -39
- package/dist/converter/PSDM/ConverterPowerSystemDataModel.js.map +1 -1
- package/dist/converter/PSDM/model/FixedFeedIn.d.ts +9 -0
- package/dist/converter/PSDM/model/Line.d.ts +12 -0
- package/dist/converter/PSDM/model/LineType.d.ts +11 -0
- package/dist/converter/PSDM/model/Load.d.ts +12 -0
- package/dist/converter/PSDM/model/TimeSeriesMapping.d.ts +6 -0
- package/dist/converter/PSDM/model/Transformer.d.ts +11 -0
- package/dist/converter/PSDM/model/TransformerType.d.ts +18 -0
- package/dist/converter/integral7/converter.integral7.d.ts +207 -0
- package/dist/converter/integral7/converter.integral7.js +5530 -0
- package/dist/converter/integral7/converter.integral7.js.map +1 -0
- package/dist/converter/integral7/dl-convert/db/data.types.d.ts +9 -0
- package/dist/converter/integral7/dl-convert/db/data.types.js +14 -0
- package/dist/converter/integral7/dl-convert/db/data.types.js.map +1 -0
- package/dist/converter/integral7/dl-convert/db/database.interface.types.d.ts +125 -0
- package/dist/converter/integral7/dl-convert/db/database.interface.types.js +3 -0
- package/dist/converter/integral7/dl-convert/db/database.interface.types.js.map +1 -0
- package/dist/converter/integral7/dl-convert/dl-converter-i7-function.types.d.ts +9 -0
- package/dist/converter/integral7/dl-convert/dl-converter-i7-function.types.js +3 -0
- package/dist/converter/integral7/dl-convert/dl-converter-i7-function.types.js.map +1 -0
- package/dist/converter/integral7/dl-convert/dl-converter-i7.d.ts +105 -0
- package/dist/converter/integral7/dl-convert/dl-converter-i7.js +1427 -0
- package/dist/converter/integral7/dl-convert/dl-converter-i7.js.map +1 -0
- package/dist/converter/integral7/interface-i7/data-structures-i7.d.ts +10 -0
- package/dist/converter/integral7/interface-i7/export-frame-i7.d.ts +15 -2
- package/dist/converter/integral7/interface-i7/export-frame-i7.js +153 -74
- package/dist/converter/integral7/interface-i7/export-frame-i7.js.map +1 -1
- package/dist/converter/integral7/model/dl-utils/I7KnotenBeziehung.d.ts +6 -0
- package/dist/converter/integral7/model/dl-utils/I7KnotenBeziehung.js +11 -0
- package/dist/converter/integral7/model/dl-utils/I7KnotenBeziehung.js.map +1 -1
- package/dist/converter/integral7/model/dl-utils/QueryObjectSsabNsg.d.ts +17 -5
- package/dist/converter/integral7/model/dl-utils/QueryObjectSsabNsg.js +22 -0
- package/dist/converter/integral7/model/dl-utils/QueryObjectSsabNsg.js.map +1 -1
- package/dist/converter/integral7/model/dl-utils/constants.d.ts +8 -0
- package/dist/converter/integral7/model/dl-utils/constants.js +66 -58
- package/dist/converter/integral7/model/dl-utils/constants.js.map +1 -1
- package/dist/converter/integral7/model/dl-utils/util-functions.d.ts +39 -11
- package/dist/converter/integral7/model/dl-utils/util-functions.js +350 -110
- package/dist/converter/integral7/model/dl-utils/util-functions.js.map +1 -1
- package/dist/converter/integral7/model/integral/BaseClass.js +8 -0
- package/dist/converter/integral7/model/integral/BaseClass.js.map +1 -1
- package/dist/converter/integral7/model/integral/BaseClassNsg.js +7 -0
- package/dist/converter/integral7/model/integral/BaseClassNsg.js.map +1 -1
- package/dist/converter/integral7/model/integral/BaseClassTrafoNsg.d.ts +4 -0
- package/dist/converter/integral7/model/integral/BaseClassTrafoNsg.js +6 -0
- package/dist/converter/integral7/model/integral/BaseClassTrafoNsg.js.map +1 -1
- package/dist/converter/integral7/model/integral/KnotenSo.js +6 -0
- package/dist/converter/integral7/model/integral/KnotenSo.js.map +1 -1
- package/dist/converter/integral7/model/integral/KnotenSoNsg.js +6 -0
- package/dist/converter/integral7/model/integral/KnotenSoNsg.js.map +1 -1
- package/dist/converter/integral7/model/integral/Kopfstation.d.ts +1 -1
- package/dist/converter/integral7/model/integral/Laengskupplung.js +6 -0
- package/dist/converter/integral7/model/integral/Laengskupplung.js.map +1 -1
- package/dist/converter/integral7/model/integral/Leitung.js +9 -0
- package/dist/converter/integral7/model/integral/Leitung.js.map +1 -1
- package/dist/converter/integral7/model/integral/LeitungNsg.js +10 -0
- package/dist/converter/integral7/model/integral/LeitungNsg.js.map +1 -1
- package/dist/converter/integral7/model/integral/Point.d.ts +7 -0
- package/dist/converter/integral7/model/integral/Point.js +10 -1
- package/dist/converter/integral7/model/integral/Point.js.map +1 -1
- package/dist/converter/integral7/model/integral/Schaltanlage.js +8 -3
- package/dist/converter/integral7/model/integral/Schaltanlage.js.map +1 -1
- package/dist/converter/integral7/model/integral/SchaltanlageNSG.js +8 -1
- package/dist/converter/integral7/model/integral/SchaltanlageNSG.js.map +1 -1
- package/dist/converter/integral7/model/integral/Schaltanlagenabschnitt.js +7 -2
- package/dist/converter/integral7/model/integral/Schaltanlagenabschnitt.js.map +1 -1
- package/dist/converter/integral7/model/integral/SchaltanlagenabschnittNsg.js +8 -0
- package/dist/converter/integral7/model/integral/SchaltanlagenabschnittNsg.js.map +1 -1
- package/dist/converter/integral7/model/integral/Schaltfeld.js +9 -4
- package/dist/converter/integral7/model/integral/Schaltfeld.js.map +1 -1
- package/dist/converter/integral7/model/integral/SchaltfeldNsg.d.ts +8 -0
- package/dist/converter/integral7/model/integral/SchaltfeldNsg.js +17 -0
- package/dist/converter/integral7/model/integral/SchaltfeldNsg.js.map +1 -1
- package/dist/converter/integral7/model/integral/Standort.js +15 -1
- package/dist/converter/integral7/model/integral/Standort.js.map +1 -1
- package/dist/converter/integral7/model/integral/StandortNsg.js +4 -1
- package/dist/converter/integral7/model/integral/StandortNsg.js.map +1 -1
- package/dist/converter/integral7/model/integral/Trafo2w.js +6 -0
- package/dist/converter/integral7/model/integral/Trafo2w.js.map +1 -1
- package/dist/converter/integral7/model/integral/Trafo2wNsg.js +5 -0
- package/dist/converter/integral7/model/integral/Trafo2wNsg.js.map +1 -1
- package/dist/converter/integral7/model/integral/Trafo3w.js +5 -0
- package/dist/converter/integral7/model/integral/Trafo3w.js.map +1 -1
- package/dist/converter/integral7/model/integral/Trafo3wNsg.d.ts +4 -0
- package/dist/converter/integral7/model/integral/Trafo3wNsg.js +12 -0
- package/dist/converter/integral7/model/integral/Trafo3wNsg.js.map +1 -1
- package/dist/converter/integral7/model/interfaces.d.ts +57 -0
- package/dist/converter/integral7/model/interfaces.js.map +1 -1
- package/dist/converter/integral7/sql/integral.sql.d.ts +92 -1
- package/dist/converter/integral7/sql/integral.sql.js +295 -173
- package/dist/converter/integral7/sql/integral.sql.js.map +1 -1
- package/dist/converter/integral7/utils-cgmes-export.d.ts +10 -10
- package/dist/converter/integral7/utils-cgmes-export.js +2 -1
- package/dist/converter/integral7/utils-cgmes-export.js.map +1 -1
- package/dist/converter/integral7/utils-schema.js +4 -5
- package/dist/converter/integral7/utils-schema.js.map +1 -1
- package/dist/converter/integral7/utils-trafo3w.d.ts +68 -1
- package/dist/converter/integral7/utils-trafo3w.js +92 -4
- package/dist/converter/integral7/utils-trafo3w.js.map +1 -1
- package/dist/converter/integral7/utils.d.ts +59 -15
- package/dist/converter/integral7/utils.js +319 -71
- package/dist/converter/integral7/utils.js.map +1 -1
- package/dist/data-structures/Settings.js +6 -2
- package/dist/data-structures/Settings.js.map +1 -1
- package/dist/data-structures/graph/GraphObject.js +8 -3
- package/dist/data-structures/graph/GraphObject.js.map +1 -1
- package/dist/data-structures/graph/Types.js.map +1 -1
- package/dist/data-structures/graph/connections/connection.js +5 -1
- package/dist/data-structures/graph/connections/connection.js.map +1 -1
- package/dist/data-structures/graph/edges/GraphEdge.js +2 -0
- package/dist/data-structures/graph/edges/GraphEdge.js.map +1 -1
- package/dist/data-structures/graph/graph-interfaces.d.ts +3 -0
- package/dist/data-structures/graph/graph-util.d.ts +4 -0
- package/dist/data-structures/graph/graph-util.js +31 -4
- package/dist/data-structures/graph/graph-util.js.map +1 -1
- package/dist/data-structures/graph/graph.d.ts +9 -3
- package/dist/data-structures/graph/graph.js +19 -3
- package/dist/data-structures/graph/graph.js.map +1 -1
- package/dist/data-structures/tree/GraphTree.d.ts +2 -0
- package/dist/data-structures/tree/GraphTree.js +13 -10
- package/dist/data-structures/tree/GraphTree.js.map +1 -1
- package/dist/data-structures/tree/GraphTreeEdge.js +6 -3
- package/dist/data-structures/tree/GraphTreeEdge.js.map +1 -1
- package/dist/data-structures/tree/GraphTreeNode.d.ts +1 -0
- package/dist/data-structures/tree/GraphTreeNode.js +17 -8
- package/dist/data-structures/tree/GraphTreeNode.js.map +1 -1
- package/dist/data-structures/tree/GraphTreeObject.d.ts +2 -0
- package/dist/data-structures/tree/GraphTreeObject.js +6 -1
- package/dist/data-structures/tree/GraphTreeObject.js.map +1 -1
- package/dist/etl/etl-neplan/et-neplan-regex.d.ts +3 -0
- package/dist/etl/etl-neplan/et-neplan-regex.js +3 -0
- package/dist/etl/etl-neplan/et-neplan-regex.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-contingency-analysis.d.ts +2 -2
- package/dist/etl/etl-neplan/etl-neplan-contingency-analysis.js +62 -14
- package/dist/etl/etl-neplan/etl-neplan-contingency-analysis.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-csv.d.ts +31 -14
- package/dist/etl/etl-neplan/etl-neplan-csv.js +905 -419
- package/dist/etl/etl-neplan/etl-neplan-csv.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-feederline.d.ts +30 -4
- package/dist/etl/etl-neplan/etl-neplan-feederline.js +151 -33
- package/dist/etl/etl-neplan/etl-neplan-feederline.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-geo.d.ts +8 -7
- package/dist/etl/etl-neplan/etl-neplan-geo.js +108 -109
- package/dist/etl/etl-neplan/etl-neplan-geo.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-geo_depr.d.ts +169 -0
- package/dist/etl/etl-neplan/etl-neplan-geo_depr.js +226 -0
- package/dist/etl/etl-neplan/etl-neplan-geo_depr.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan-util.js +12 -9
- package/dist/etl/etl-neplan/etl-neplan-util.js.map +1 -1
- package/dist/etl/etl-neplan/etl-neplan.d.ts +38 -5
- package/dist/etl/etl-neplan/etl-neplan.js +356 -105
- package/dist/etl/etl-neplan/etl-neplan.js.map +1 -1
- package/dist/etl/etl-neplan/neplan-contingency-analysis.d.ts +3 -2
- package/dist/etl/etl-neplan/neplan-contingency-analysis.js +213 -65
- package/dist/etl/etl-neplan/neplan-contingency-analysis.js.map +1 -1
- package/dist/etl/etl-psdm-novagent/etl-psdm-novagent-energytypes.d.ts +3 -2
- package/dist/etl/etl-psdm-novagent/etl-psdm-novagent-energytypes.js +6 -3
- package/dist/etl/etl-psdm-novagent/etl-psdm-novagent-energytypes.js.map +1 -1
- package/dist/factory/factory-interfaces.d.ts +8 -5
- package/dist/factory/object-factory.js +13 -4
- package/dist/factory/object-factory.js.map +1 -1
- package/dist/factory/sparql-factory.js +7 -0
- package/dist/factory/sparql-factory.js.map +1 -1
- package/dist/grid-validation/grid-validation.js +11 -7
- package/dist/grid-validation/grid-validation.js.map +1 -1
- package/dist/index.d.ts +52 -24
- package/dist/index.js +123 -62
- package/dist/index.js.map +1 -1
- package/dist/interfaces/IUUIDObject.d.ts +8 -0
- package/dist/interfaces/IUUIDObject.js +3 -0
- package/dist/interfaces/IUUIDObject.js.map +1 -0
- package/dist/interfaces/model/assets/IActivityRecord.d.ts +8 -0
- package/dist/interfaces/model/assets/IActivityRecord.js +3 -0
- package/dist/interfaces/model/assets/IActivityRecord.js.map +1 -0
- package/dist/interfaces/model/core/IFeeder.d.ts +3 -0
- package/dist/interfaces/model/core/IIdentifiedObject.d.ts +25 -7
- package/dist/interfaces/model/core/ITerminal.d.ts +1 -0
- package/dist/interfaces/model/operations/IOutage.d.ts +3 -0
- package/dist/interfaces/model/operations/ISwitchingPlan.d.ts +8 -0
- package/dist/interfaces/persistence.interfaces.d.ts +1 -0
- package/dist/interfaces/persistence.interfaces.js +16 -0
- package/dist/interfaces/persistence.interfaces.js.map +1 -1
- package/dist/interfaces/schema-settings/ShapeInfos.js +12 -0
- package/dist/interfaces/schema-settings/ShapeInfos.js.map +1 -1
- package/dist/model/alternate-models/AlternateModel.js +2 -0
- package/dist/model/alternate-models/AlternateModel.js.map +1 -1
- package/dist/model/alternate-models/AlternateModelGroup.js +1 -1
- package/dist/model/alternate-models/AlternateModelGroup.js.map +1 -1
- package/dist/model/assetinfo/AssetInfo.js +5 -4
- package/dist/model/assetinfo/AssetInfo.js.map +1 -1
- package/dist/model/assetinfo/PowerTransformerInfo.d.ts +1 -0
- package/dist/model/assetinfo/PowerTransformerInfo.js +2 -1
- package/dist/model/assetinfo/PowerTransformerInfo.js.map +1 -1
- package/dist/model/assetinfo/SwitchInfo.d.ts +4 -4
- package/dist/model/assetinfo/SwitchInfo.js +21 -22
- package/dist/model/assetinfo/SwitchInfo.js.map +1 -1
- package/dist/model/assetinfo/TapChangerInfo.d.ts +20 -1
- package/dist/model/assetinfo/TapChangerInfo.js +78 -37
- package/dist/model/assetinfo/TapChangerInfo.js.map +1 -1
- package/dist/model/assetinfo/TransformerEndInfo.d.ts +2 -1
- package/dist/model/assetinfo/TransformerEndInfo.js +16 -10
- package/dist/model/assetinfo/TransformerEndInfo.js.map +1 -1
- package/dist/model/assetinfo/WireInfo.d.ts +1 -1
- package/dist/model/assetinfo/WireInfo.js +12 -9
- package/dist/model/assetinfo/WireInfo.js.map +1 -1
- package/dist/model/assets/AggregateScore.d.ts +7 -0
- package/dist/model/assets/AggregateScore.js +43 -0
- package/dist/model/assets/AggregateScore.js.map +1 -1
- package/dist/model/assets/Analytic.d.ts +4 -4
- package/dist/model/assets/Analytic.js +37 -32
- package/dist/model/assets/Analytic.js.map +1 -1
- package/dist/model/assets/AnalyticScore.d.ts +9 -3
- package/dist/model/assets/AnalyticScore.js +22 -2
- package/dist/model/assets/AnalyticScore.js.map +1 -1
- package/dist/model/assets/Asset.d.ts +17 -11
- package/dist/model/assets/Asset.js +107 -81
- package/dist/model/assets/Asset.js.map +1 -1
- package/dist/model/assets/AssetContainer.js +2 -2
- package/dist/model/assets/AssetContainer.js.map +1 -1
- package/dist/model/assets/AssetDeployment.d.ts +9 -4
- package/dist/model/assets/AssetDeployment.js +40 -28
- package/dist/model/assets/AssetDeployment.js.map +1 -1
- package/dist/model/assets/AssetHealthEvent.d.ts +5 -4
- package/dist/model/assets/AssetHealthEvent.js +28 -28
- package/dist/model/assets/AssetHealthEvent.js.map +1 -1
- package/dist/model/assets/AssetOrganisationRole.d.ts +3 -3
- package/dist/model/assets/AssetOrganisationRole.js +7 -3
- package/dist/model/assets/AssetOrganisationRole.js.map +1 -1
- package/dist/model/assets/AssetOwner.d.ts +5 -2
- package/dist/model/assets/AssetOwner.js +19 -17
- package/dist/model/assets/AssetOwner.js.map +1 -1
- package/dist/model/assets/AssetUser.d.ts +5 -2
- package/dist/model/assets/AssetUser.js +20 -18
- package/dist/model/assets/AssetUser.js.map +1 -1
- package/dist/model/assets/DeploymentDate.js +7 -2
- package/dist/model/assets/DeploymentDate.js.map +1 -1
- package/dist/model/assets/Facility.d.ts +3 -3
- package/dist/model/assets/Facility.js +24 -24
- package/dist/model/assets/Facility.js.map +1 -1
- package/dist/model/assets/HealthScore.d.ts +2 -2
- package/dist/model/assets/HealthScore.js +22 -23
- package/dist/model/assets/HealthScore.js.map +1 -1
- package/dist/model/assets/LifecycleDate.js +15 -2
- package/dist/model/assets/LifecycleDate.js.map +1 -1
- package/dist/model/assets/Structure.js +1 -0
- package/dist/model/assets/Structure.js.map +1 -1
- package/dist/model/common/ActivityRecord.d.ts +6 -5
- package/dist/model/common/ActivityRecord.js +13 -4
- package/dist/model/common/ActivityRecord.js.map +1 -1
- package/dist/model/common/CoordinateSystem.d.ts +6 -4
- package/dist/model/common/CoordinateSystem.js +22 -20
- package/dist/model/common/CoordinateSystem.js.map +1 -1
- package/dist/model/common/Document.js +1 -0
- package/dist/model/common/Document.js.map +1 -1
- package/dist/model/common/Location.d.ts +14 -4
- package/dist/model/common/Location.js +80 -35
- package/dist/model/common/Location.js.map +1 -1
- package/dist/model/common/Organisation.d.ts +2 -2
- package/dist/model/common/Organisation.js +22 -23
- package/dist/model/common/Organisation.js.map +1 -1
- package/dist/model/common/OrganisationRole.d.ts +3 -3
- package/dist/model/common/OrganisationRole.js +4 -3
- package/dist/model/common/OrganisationRole.js.map +1 -1
- package/dist/model/common/PositionPoint.d.ts +6 -4
- package/dist/model/common/PositionPoint.js +50 -36
- package/dist/model/common/PositionPoint.js.map +1 -1
- package/dist/model/common/Status.js +5 -1
- package/dist/model/common/Status.js.map +1 -1
- package/dist/model/core/ACDCTerminal.d.ts +3 -3
- package/dist/model/core/ACDCTerminal.js +11 -9
- package/dist/model/core/ACDCTerminal.js.map +1 -1
- package/dist/model/core/BaseVoltage.d.ts +7 -5
- package/dist/model/core/BaseVoltage.js +31 -29
- package/dist/model/core/BaseVoltage.js.map +1 -1
- package/dist/model/core/Bay.d.ts +5 -4
- package/dist/model/core/Bay.js +35 -30
- package/dist/model/core/Bay.js.map +1 -1
- package/dist/model/core/ConductingEquipment.d.ts +7 -3
- package/dist/model/core/ConductingEquipment.js +30 -4
- package/dist/model/core/ConductingEquipment.js.map +1 -1
- package/dist/model/core/ConnectivityNode.d.ts +6 -3
- package/dist/model/core/ConnectivityNode.js +93 -56
- package/dist/model/core/ConnectivityNode.js.map +1 -1
- package/dist/model/core/ConnectivityNodeContainer.js +2 -0
- package/dist/model/core/ConnectivityNodeContainer.js.map +1 -1
- package/dist/model/core/Curve.js +17 -5
- package/dist/model/core/Curve.js.map +1 -1
- package/dist/model/core/CurveData.d.ts +6 -0
- package/dist/model/core/CurveData.js +19 -6
- package/dist/model/core/CurveData.js.map +1 -1
- package/dist/model/core/Equipment.d.ts +5 -3
- package/dist/model/core/Equipment.js +22 -10
- package/dist/model/core/Equipment.js.map +1 -1
- package/dist/model/core/EquipmentContainer.d.ts +1 -0
- package/dist/model/core/EquipmentContainer.js +4 -1
- package/dist/model/core/EquipmentContainer.js.map +1 -1
- package/dist/model/core/Feeder.d.ts +19 -5
- package/dist/model/core/Feeder.js +36 -14
- package/dist/model/core/Feeder.js.map +1 -1
- package/dist/model/core/GeographicalRegion.d.ts +1 -0
- package/dist/model/core/GeographicalRegion.js +3 -2
- package/dist/model/core/GeographicalRegion.js.map +1 -1
- package/dist/model/core/IdentifiedObject.d.ts +64 -6
- package/dist/model/core/IdentifiedObject.js +126 -25
- package/dist/model/core/IdentifiedObject.js.map +1 -1
- package/dist/model/core/PSRType.d.ts +19 -4
- package/dist/model/core/PSRType.js +51 -20
- package/dist/model/core/PSRType.js.map +1 -1
- package/dist/model/core/PowerSystemResource.d.ts +5 -3
- package/dist/model/core/PowerSystemResource.js +27 -13
- package/dist/model/core/PowerSystemResource.js.map +1 -1
- package/dist/model/core/SubGeographicalRegion.d.ts +1 -0
- package/dist/model/core/SubGeographicalRegion.js +6 -4
- package/dist/model/core/SubGeographicalRegion.js.map +1 -1
- package/dist/model/core/Substation.d.ts +11 -4
- package/dist/model/core/Substation.js +51 -35
- package/dist/model/core/Substation.js.map +1 -1
- package/dist/model/core/Terminal.d.ts +19 -5
- package/dist/model/core/Terminal.js +103 -51
- package/dist/model/core/Terminal.js.map +1 -1
- package/dist/model/core/VoltageLevel.d.ts +6 -4
- package/dist/model/core/VoltageLevel.js +48 -36
- package/dist/model/core/VoltageLevel.js.map +1 -1
- package/dist/model/dc/ACDCConverter.d.ts +11 -0
- package/dist/model/dc/ACDCConverter.js +47 -23
- package/dist/model/dc/ACDCConverter.js.map +1 -1
- package/dist/model/dc/ACDCConverterDCTerminal.d.ts +1 -0
- package/dist/model/dc/ACDCConverterDCTerminal.js +7 -3
- package/dist/model/dc/ACDCConverterDCTerminal.js.map +1 -1
- package/dist/model/dc/CsConverter.d.ts +8 -0
- package/dist/model/dc/CsConverter.js +37 -16
- package/dist/model/dc/CsConverter.js.map +1 -1
- package/dist/model/dc/CsOperatingModeKind.js +1 -1
- package/dist/model/dc/CsOperatingModeKind.js.map +1 -1
- package/dist/model/dc/DCBaseTerminal.js +4 -2
- package/dist/model/dc/DCBaseTerminal.js.map +1 -1
- package/dist/model/dc/DCConductingEquipment.js +1 -4
- package/dist/model/dc/DCConductingEquipment.js.map +1 -1
- package/dist/model/dc/DCConverterUnit.d.ts +1 -0
- package/dist/model/dc/DCConverterUnit.js +7 -3
- package/dist/model/dc/DCConverterUnit.js.map +1 -1
- package/dist/model/dc/DCEquipmentContainer.js +1 -4
- package/dist/model/dc/DCEquipmentContainer.js.map +1 -1
- package/dist/model/dc/DCLine.js +21 -19
- package/dist/model/dc/DCLine.js.map +1 -1
- package/dist/model/dc/DCLineSegment.d.ts +5 -0
- package/dist/model/dc/DCLineSegment.js +38 -29
- package/dist/model/dc/DCLineSegment.js.map +1 -1
- package/dist/model/dc/DCNode.d.ts +2 -0
- package/dist/model/dc/DCNode.js +7 -3
- package/dist/model/dc/DCNode.js.map +1 -1
- package/dist/model/dc/DCTerminal.d.ts +1 -0
- package/dist/model/dc/DCTerminal.js +5 -2
- package/dist/model/dc/DCTerminal.js.map +1 -1
- package/dist/model/dc/VsConverter.d.ts +3 -0
- package/dist/model/dc/VsConverter.js +28 -16
- package/dist/model/dc/VsConverter.js.map +1 -1
- package/dist/model/diagram/Diagram.d.ts +5 -4
- package/dist/model/diagram/Diagram.js +39 -27
- package/dist/model/diagram/Diagram.js.map +1 -1
- package/dist/model/diagram/DiagramObject.d.ts +6 -4
- package/dist/model/diagram/DiagramObject.js +68 -41
- package/dist/model/diagram/DiagramObject.js.map +1 -1
- package/dist/model/diagram/DiagramObjectPoint.d.ts +5 -5
- package/dist/model/diagram/DiagramObjectPoint.js +62 -57
- package/dist/model/diagram/DiagramObjectPoint.js.map +1 -1
- package/dist/model/diagram/DiagramStyle.d.ts +1 -0
- package/dist/model/diagram/DiagramStyle.js +4 -3
- package/dist/model/diagram/DiagramStyle.js.map +1 -1
- package/dist/model/domain/ActivePower.js +3 -0
- package/dist/model/domain/ActivePower.js.map +1 -1
- package/dist/model/domain/AngleDegrees.js +3 -0
- package/dist/model/domain/AngleDegrees.js.map +1 -1
- package/dist/model/domain/ApparentPower.js +3 -0
- package/dist/model/domain/ApparentPower.js.map +1 -1
- package/dist/model/domain/Capacitance.js +3 -0
- package/dist/model/domain/Capacitance.js.map +1 -1
- package/dist/model/domain/CapacitancePerLength.js +3 -0
- package/dist/model/domain/CapacitancePerLength.js.map +1 -1
- package/dist/model/domain/ConductancePerLength.js +3 -0
- package/dist/model/domain/ConductancePerLength.js.map +1 -1
- package/dist/model/domain/CurrentFlow.js +3 -0
- package/dist/model/domain/CurrentFlow.js.map +1 -1
- package/dist/model/domain/Reactance.js +3 -0
- package/dist/model/domain/Reactance.js.map +1 -1
- package/dist/model/domain/ReactancePerLength.js +3 -0
- package/dist/model/domain/ReactancePerLength.js.map +1 -1
- package/dist/model/domain/ReactivePower.js +3 -0
- package/dist/model/domain/ReactivePower.js.map +1 -1
- package/dist/model/domain/Resistance.js +3 -0
- package/dist/model/domain/Resistance.js.map +1 -1
- package/dist/model/domain/ResistancePerLength.js +3 -0
- package/dist/model/domain/ResistancePerLength.js.map +1 -1
- package/dist/model/domain/Voltage.js +3 -0
- package/dist/model/domain/Voltage.js.map +1 -1
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsFunctionBlock.js +2 -1
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsFunctionBlock.js.map +1 -1
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/RotatingMachineDynamics.js +6 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/RotatingMachineDynamics.js.map +1 -1
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDetailed.js +4 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDetailed.js.map +1 -1
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDynamics.js +2 -1
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDynamics.js.map +1 -1
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.d.ts +61 -0
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.js +88 -13
- package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.js.map +1 -1
- package/dist/model/equivalents/EquivalentBranch.d.ts +10 -4
- package/dist/model/equivalents/EquivalentBranch.js +116 -94
- package/dist/model/equivalents/EquivalentBranch.js.map +1 -1
- package/dist/model/equivalents/EquivalentInjection.d.ts +1 -0
- package/dist/model/equivalents/EquivalentInjection.js +41 -25
- package/dist/model/equivalents/EquivalentInjection.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONAssetCommunicationEquipment.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONAssetCommunicationEquipment.js +19 -17
- package/dist/model/extensions/amprion/assets/AMPRIONAssetCommunicationEquipment.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONAssetConstructionMaintenance.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONAssetConstructionMaintenance.js +19 -17
- package/dist/model/extensions/amprion/assets/AMPRIONAssetConstructionMaintenance.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONAssetPrimaryEquipment.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONAssetPrimaryEquipment.js +19 -17
- package/dist/model/extensions/amprion/assets/AMPRIONAssetPrimaryEquipment.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONAssetSecondaryEquipment.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONAssetSecondaryEquipment.js +19 -17
- package/dist/model/extensions/amprion/assets/AMPRIONAssetSecondaryEquipment.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.d.ts +8 -3
- package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.js +30 -15
- package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONContractingAuthority.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONContractingAuthority.js +19 -17
- package/dist/model/extensions/amprion/assets/AMPRIONContractingAuthority.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONCountry.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONCountry.js +23 -21
- package/dist/model/extensions/amprion/assets/AMPRIONCountry.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONFacility.d.ts +8 -3
- package/dist/model/extensions/amprion/assets/AMPRIONFacility.js +42 -20
- package/dist/model/extensions/amprion/assets/AMPRIONFacility.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONLeaseholder.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONLeaseholder.js +19 -17
- package/dist/model/extensions/amprion/assets/AMPRIONLeaseholder.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONLineDistrict.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONLineDistrict.js +19 -17
- package/dist/model/extensions/amprion/assets/AMPRIONLineDistrict.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONServiceProvider.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONServiceProvider.js +19 -17
- package/dist/model/extensions/amprion/assets/AMPRIONServiceProvider.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONSpanField.d.ts +8 -3
- package/dist/model/extensions/amprion/assets/AMPRIONSpanField.js +44 -16
- package/dist/model/extensions/amprion/assets/AMPRIONSpanField.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONState.d.ts +7 -4
- package/dist/model/extensions/amprion/assets/AMPRIONState.js +30 -27
- package/dist/model/extensions/amprion/assets/AMPRIONState.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONTeam.d.ts +5 -2
- package/dist/model/extensions/amprion/assets/AMPRIONTeam.js +22 -19
- package/dist/model/extensions/amprion/assets/AMPRIONTeam.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONTower.d.ts +8 -3
- package/dist/model/extensions/amprion/assets/AMPRIONTower.js +57 -27
- package/dist/model/extensions/amprion/assets/AMPRIONTower.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONWire.d.ts +8 -3
- package/dist/model/extensions/amprion/assets/AMPRIONWire.js +63 -26
- package/dist/model/extensions/amprion/assets/AMPRIONWire.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONBay.d.ts +7 -3
- package/dist/model/extensions/amprion/core/AMPRIONBay.js +15 -10
- package/dist/model/extensions/amprion/core/AMPRIONBay.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.d.ts +4 -0
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js +9 -3
- package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONLine.d.ts +5 -3
- package/dist/model/extensions/amprion/core/AMPRIONLine.js +12 -9
- package/dist/model/extensions/amprion/core/AMPRIONLine.js.map +1 -1
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.d.ts +8 -3
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.js +18 -11
- package/dist/model/extensions/amprion/core/AMPRIONSubstation.js.map +1 -1
- package/dist/model/extensions/amprion/operationallimits/AMPRIONMaxInstrumentalCurrentLimit.d.ts +8 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONMaxInstrumentalCurrentLimit.js +44 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONMaxInstrumentalCurrentLimit.js.map +1 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONProtectionCurrentLimit.d.ts +8 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONProtectionCurrentLimit.js +44 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONProtectionCurrentLimit.js.map +1 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalConnectionCurrentLimit.d.ts +8 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalConnectionCurrentLimit.js +44 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalConnectionCurrentLimit.js.map +1 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalCurrentLimit.d.ts +8 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalCurrentLimit.js +44 -0
- package/dist/model/extensions/amprion/operationallimits/AMPRIONThermalCurrentLimit.js.map +1 -0
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.d.ts +3 -3
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.js +51 -29
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.js.map +1 -1
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProjectBundle.d.ts +3 -3
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProjectBundle.js +11 -10
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProjectBundle.js.map +1 -1
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProjectPlan.d.ts +2 -2
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProjectPlan.js +6 -7
- package/dist/model/extensions/amprion/project/AMPRIONConstructionProjectPlan.js.map +1 -1
- package/dist/model/extensions/amprion/project/AMPRIONErpProject.js +4 -2
- package/dist/model/extensions/amprion/project/AMPRIONErpProject.js.map +1 -1
- package/dist/model/extensions/amprion/project/AMPRIONErpProjectPhase.d.ts +3 -3
- package/dist/model/extensions/amprion/project/AMPRIONErpProjectPhase.js +20 -14
- package/dist/model/extensions/amprion/project/AMPRIONErpProjectPhase.js.map +1 -1
- package/dist/model/extensions/amprion/project/AMPRIONErpProjectStructure.js +15 -8
- package/dist/model/extensions/amprion/project/AMPRIONErpProjectStructure.js.map +1 -1
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.d.ts +9 -4
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.js +14 -9
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.js.map +1 -1
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSubSegment.d.ts +7 -3
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSubSegment.js +37 -31
- package/dist/model/extensions/amprion/wires/AMPRIONACLineSubSegment.js.map +1 -1
- package/dist/model/extensions/amprion/wires/AMPRIONSeriesCompensator.d.ts +4 -0
- package/dist/model/extensions/amprion/wires/AMPRIONSeriesCompensator.js +8 -3
- package/dist/model/extensions/amprion/wires/AMPRIONSeriesCompensator.js.map +1 -1
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerEndInfo.d.ts +9 -4
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerEndInfo.js +54 -41
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerEndInfo.js.map +1 -1
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerInfo.d.ts +12 -3
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerInfo.js +72 -37
- package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerInfo.js.map +1 -1
- package/dist/model/extensions/enervance/assetinfo/EVStationInfo.d.ts +7 -3
- package/dist/model/extensions/enervance/assetinfo/EVStationInfo.js +38 -32
- package/dist/model/extensions/enervance/assetinfo/EVStationInfo.js.map +1 -1
- package/dist/model/extensions/enervance/assetinfo/EVTapChangerInfo.d.ts +5 -4
- package/dist/model/extensions/enervance/assetinfo/EVTapChangerInfo.js +28 -25
- package/dist/model/extensions/enervance/assetinfo/EVTapChangerInfo.js.map +1 -1
- package/dist/model/extensions/enervance/assetinfo/EVWireInfo.d.ts +8 -3
- package/dist/model/extensions/enervance/assetinfo/EVWireInfo.js +78 -62
- package/dist/model/extensions/enervance/assetinfo/EVWireInfo.js.map +1 -1
- package/dist/model/extensions/enervance/assets/EVAnalytic.d.ts +3 -3
- package/dist/model/extensions/enervance/assets/EVAnalytic.js +16 -16
- package/dist/model/extensions/enervance/assets/EVAnalytic.js.map +1 -1
- package/dist/model/extensions/enervance/assets/EVImportanceKind.d.ts +7 -0
- package/dist/model/extensions/enervance/assets/EVImportanceKind.js +12 -0
- package/dist/model/extensions/enervance/assets/EVImportanceKind.js.map +1 -0
- package/dist/model/extensions/enervance/assets/EVImportanceScore.d.ts +2 -2
- package/dist/model/extensions/enervance/assets/EVImportanceScore.js +22 -23
- package/dist/model/extensions/enervance/assets/EVImportanceScore.js.map +1 -1
- package/dist/model/extensions/enervance/assets/EVIndicator.d.ts +3 -3
- package/dist/model/extensions/enervance/assets/EVIndicator.js +26 -25
- package/dist/model/extensions/enervance/assets/EVIndicator.js.map +1 -1
- package/dist/model/extensions/enervance/assets/EVPriorityKind.d.ts +7 -0
- package/dist/model/extensions/enervance/assets/EVPriorityKind.js +12 -0
- package/dist/model/extensions/enervance/assets/EVPriorityKind.js.map +1 -0
- package/dist/model/extensions/enervance/assets/EVWireObject.d.ts +19 -5
- package/dist/model/extensions/enervance/assets/EVWireObject.js +114 -63
- package/dist/model/extensions/enervance/assets/EVWireObject.js.map +1 -1
- package/dist/model/extensions/enervance/core/EVTerminal.d.ts +2 -2
- package/dist/model/extensions/enervance/core/EVTerminal.js +6 -6
- package/dist/model/extensions/enervance/core/EVTerminal.js.map +1 -1
- package/dist/model/extensions/enervance/generic-data-set/EVMetaObject.d.ts +34 -0
- package/dist/model/extensions/enervance/generic-data-set/EVMetaObject.js +114 -0
- package/dist/model/extensions/enervance/generic-data-set/EVMetaObject.js.map +1 -0
- package/dist/model/extensions/enervance/operations/EVTerminalAction.d.ts +6 -4
- package/dist/model/extensions/enervance/operations/EVTerminalAction.js +34 -19
- package/dist/model/extensions/enervance/operations/EVTerminalAction.js.map +1 -1
- package/dist/model/extensions/enervance/wires/EVACLineSegment.d.ts +7 -4
- package/dist/model/extensions/enervance/wires/EVACLineSegment.js +44 -42
- package/dist/model/extensions/enervance/wires/EVACLineSegment.js.map +1 -1
- package/dist/model/extensions/enervance/wires/EVACLineSubSegment.d.ts +5 -4
- package/dist/model/extensions/enervance/wires/EVACLineSubSegment.js +41 -37
- package/dist/model/extensions/enervance/wires/EVACLineSubSegment.js.map +1 -1
- package/dist/model/extensions/integral/common/INTEGRALMultiplierFactor.d.ts +4 -0
- package/dist/model/extensions/integral/common/INTEGRALMultiplierFactor.js +15 -6
- package/dist/model/extensions/integral/common/INTEGRALMultiplierFactor.js.map +1 -1
- package/dist/model/extensions/integral/equivalents/INTEGRALEquivalentInjection.d.ts +1 -0
- package/dist/model/extensions/integral/equivalents/INTEGRALEquivalentInjection.js +6 -3
- package/dist/model/extensions/integral/equivalents/INTEGRALEquivalentInjection.js.map +1 -1
- package/dist/model/extensions/integral/loadmodel/INTEGRALConformLoad.d.ts +1 -0
- package/dist/model/extensions/integral/loadmodel/INTEGRALConformLoad.js +8 -4
- package/dist/model/extensions/integral/loadmodel/INTEGRALConformLoad.js.map +1 -1
- package/dist/model/extensions/integral/wires/INTEGRALACLineSegment.d.ts +1 -0
- package/dist/model/extensions/integral/wires/INTEGRALACLineSegment.js +4 -2
- package/dist/model/extensions/integral/wires/INTEGRALACLineSegment.js.map +1 -1
- package/dist/model/extensions/integral/wires/INTEGRALAsynchronousMachine.d.ts +1 -0
- package/dist/model/extensions/integral/wires/INTEGRALAsynchronousMachine.js +10 -5
- package/dist/model/extensions/integral/wires/INTEGRALAsynchronousMachine.js.map +1 -1
- package/dist/model/extensions/integral/wires/INTEGRALExternalNetworkInjection.d.ts +1 -0
- package/dist/model/extensions/integral/wires/INTEGRALExternalNetworkInjection.js +10 -5
- package/dist/model/extensions/integral/wires/INTEGRALExternalNetworkInjection.js.map +1 -1
- package/dist/model/extensions/integral/wires/INTEGRALSynchronousMachine.d.ts +1 -0
- package/dist/model/extensions/integral/wires/INTEGRALSynchronousMachine.js +9 -4
- package/dist/model/extensions/integral/wires/INTEGRALSynchronousMachine.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.d.ts +17 -7
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js +71 -19
- package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js +2 -3
- package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.d.ts +7 -3
- package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js +46 -36
- package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.d.ts +12 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.js +60 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.d.ts +11 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.js +55 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.d.ts +12 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.js +60 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.d.ts +7 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.js +12 -0
- package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.js.map +1 -0
- package/dist/model/extensions/neplan-westnetz/common/WNLocation.d.ts +10 -4
- package/dist/model/extensions/neplan-westnetz/common/WNLocation.js +36 -29
- package/dist/model/extensions/neplan-westnetz/common/WNLocation.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/core/WNBay.d.ts +5 -4
- package/dist/model/extensions/neplan-westnetz/core/WNBay.js +34 -31
- package/dist/model/extensions/neplan-westnetz/core/WNBay.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.d.ts +22 -5
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js +230 -101
- package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.d.ts +16 -4
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js +89 -34
- package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.js +1 -1
- package/dist/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.d.ts +5 -3
- package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.js +23 -19
- package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/operations/WNOutage.d.ts +7 -4
- package/dist/model/extensions/neplan-westnetz/operations/WNOutage.js +18 -13
- package/dist/model/extensions/neplan-westnetz/operations/WNOutage.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.d.ts +4 -4
- package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.js +52 -49
- package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.js.map +1 -1
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.d.ts +34 -3
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js +213 -137
- package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js.map +1 -1
- package/dist/model/faults/Fault.d.ts +4 -2
- package/dist/model/faults/Fault.js +5 -0
- package/dist/model/faults/Fault.js.map +1 -1
- package/dist/model/generation/FossilFuel.d.ts +1 -0
- package/dist/model/generation/FossilFuel.js +7 -3
- package/dist/model/generation/FossilFuel.js.map +1 -1
- package/dist/model/generation/GeneratingUnit.d.ts +12 -4
- package/dist/model/generation/GeneratingUnit.js +81 -58
- package/dist/model/generation/GeneratingUnit.js.map +1 -1
- package/dist/model/generation/HydroGeneratingUnit.d.ts +1 -0
- package/dist/model/generation/HydroGeneratingUnit.js +5 -2
- package/dist/model/generation/HydroGeneratingUnit.js.map +1 -1
- package/dist/model/generation/HydroPowerPlant.js +2 -2
- package/dist/model/generation/HydroPowerPlant.js.map +1 -1
- package/dist/model/generation/HydroPump.js +2 -0
- package/dist/model/generation/HydroPump.js.map +1 -1
- package/dist/model/generation/SolarGeneratingUnit.d.ts +1 -0
- package/dist/model/generation/SolarGeneratingUnit.js +2 -1
- package/dist/model/generation/SolarGeneratingUnit.js.map +1 -1
- package/dist/model/generation/ThermalGeneratingUnit.d.ts +1 -0
- package/dist/model/generation/ThermalGeneratingUnit.js +3 -2
- package/dist/model/generation/ThermalGeneratingUnit.js.map +1 -1
- package/dist/model/generation/WindGeneratingUnit.d.ts +3 -0
- package/dist/model/generation/WindGeneratingUnit.js +15 -11
- package/dist/model/generation/WindGeneratingUnit.js.map +1 -1
- package/dist/model/generic-data-set/ChangeSet.d.ts +9 -1
- package/dist/model/generic-data-set/ChangeSet.js +58 -2
- package/dist/model/generic-data-set/ChangeSet.js.map +1 -1
- package/dist/model/generic-data-set/ChangeSetMember.d.ts +34 -4
- package/dist/model/generic-data-set/ChangeSetMember.js +73 -4
- package/dist/model/generic-data-set/ChangeSetMember.js.map +1 -1
- package/dist/model/generic-data-set/DataSet.d.ts +10 -1
- package/dist/model/generic-data-set/DataSet.js +19 -0
- package/dist/model/generic-data-set/DataSet.js.map +1 -1
- package/dist/model/generic-data-set/InstanceSet.js +2 -2
- package/dist/model/generic-data-set/InstanceSet.js.map +1 -1
- package/dist/model/generic-data-set/ObjectCreation.d.ts +7 -1
- package/dist/model/generic-data-set/ObjectCreation.js +50 -6
- package/dist/model/generic-data-set/ObjectCreation.js.map +1 -1
- package/dist/model/generic-data-set/ObjectDeletion.d.ts +7 -1
- package/dist/model/generic-data-set/ObjectDeletion.js +50 -6
- package/dist/model/generic-data-set/ObjectDeletion.js.map +1 -1
- package/dist/model/generic-data-set/ObjectModification.d.ts +8 -1
- package/dist/model/generic-data-set/ObjectModification.js +58 -2
- package/dist/model/generic-data-set/ObjectModification.js.map +1 -1
- package/dist/model/generic-data-set/ObjectReverseModification.d.ts +8 -1
- package/dist/model/generic-data-set/ObjectReverseModification.js +52 -2
- package/dist/model/generic-data-set/ObjectReverseModification.js.map +1 -1
- package/dist/model/loadmodel/ConformLoad.d.ts +1 -0
- package/dist/model/loadmodel/ConformLoad.js +8 -5
- package/dist/model/loadmodel/ConformLoad.js.map +1 -1
- package/dist/model/loadmodel/ConformLoadGroup.js +4 -4
- package/dist/model/loadmodel/ConformLoadGroup.js.map +1 -1
- package/dist/model/loadmodel/EnergyArea.d.ts +5 -0
- package/dist/model/loadmodel/EnergyArea.js +5 -0
- package/dist/model/loadmodel/EnergyArea.js.map +1 -1
- package/dist/model/loadmodel/LoadArea.d.ts +6 -0
- package/dist/model/loadmodel/LoadArea.js +11 -5
- package/dist/model/loadmodel/LoadArea.js.map +1 -1
- package/dist/model/loadmodel/LoadGroup.js +3 -1
- package/dist/model/loadmodel/LoadGroup.js.map +1 -1
- package/dist/model/loadmodel/SubLoadArea.d.ts +7 -0
- package/dist/model/loadmodel/SubLoadArea.js +15 -6
- package/dist/model/loadmodel/SubLoadArea.js.map +1 -1
- package/dist/model/meas/Analog.js +4 -0
- package/dist/model/meas/Analog.js.map +1 -1
- package/dist/model/meas/Measurement.js +4 -0
- package/dist/model/meas/Measurement.js.map +1 -1
- package/dist/model/model-description/FullModel.d.ts +7 -0
- package/dist/model/model-description/FullModel.js +24 -0
- package/dist/model/model-description/FullModel.js.map +1 -0
- package/dist/model/model-description/Model.d.ts +23 -0
- package/dist/model/model-description/Model.js +86 -0
- package/dist/model/model-description/Model.js.map +1 -0
- package/dist/model/model-operations/DatasetArg.d.ts +1 -1
- package/dist/model/model-operations/DatasetArg.js +3 -2
- package/dist/model/model-operations/DatasetArg.js.map +1 -1
- package/dist/model/model-operations/IncrementalDatasetArg.d.ts +9 -1
- package/dist/model/model-operations/IncrementalDatasetArg.js +59 -2
- package/dist/model/model-operations/IncrementalDatasetArg.js.map +1 -1
- package/dist/model/model-operations/IncrementalDatasetArgDescription.d.ts +5 -0
- package/dist/model/model-operations/IncrementalDatasetArgDescription.js +37 -1
- package/dist/model/model-operations/IncrementalDatasetArgDescription.js.map +1 -1
- package/dist/model/model-operations/ModelOperation.d.ts +14 -2
- package/dist/model/model-operations/ModelOperation.js +70 -1
- package/dist/model/model-operations/ModelOperation.js.map +1 -1
- package/dist/model/model-operations/ModelOperationArg.d.ts +7 -1
- package/dist/model/model-operations/ModelOperationArg.js +17 -1
- package/dist/model/model-operations/ModelOperationArg.js.map +1 -1
- package/dist/model/model-operations/ModelOperationArgDescription.d.ts +4 -0
- package/dist/model/model-operations/ModelOperationArgDescription.js +15 -0
- package/dist/model/model-operations/ModelOperationArgDescription.js.map +1 -1
- package/dist/model/model-operations/ModelOperationDescription.d.ts +13 -1
- package/dist/model/model-operations/ModelOperationDescription.js +76 -2
- package/dist/model/model-operations/ModelOperationDescription.js.map +1 -1
- package/dist/model/operationallimits/CurrentLimit.d.ts +5 -4
- package/dist/model/operationallimits/CurrentLimit.js +26 -25
- package/dist/model/operationallimits/CurrentLimit.js.map +1 -1
- package/dist/model/operationallimits/OperationalLimit.d.ts +3 -3
- package/dist/model/operationallimits/OperationalLimit.js +9 -4
- package/dist/model/operationallimits/OperationalLimit.js.map +1 -1
- package/dist/model/operationallimits/OperationalLimitSet.d.ts +5 -4
- package/dist/model/operationallimits/OperationalLimitSet.js +32 -25
- package/dist/model/operationallimits/OperationalLimitSet.js.map +1 -1
- package/dist/model/operationallimits/OperationalLimitType.d.ts +3 -2
- package/dist/model/operationallimits/OperationalLimitType.js +28 -22
- package/dist/model/operationallimits/OperationalLimitType.js.map +1 -1
- package/dist/model/operationallimits/VoltageLimit.d.ts +1 -0
- package/dist/model/operationallimits/VoltageLimit.js +5 -2
- package/dist/model/operationallimits/VoltageLimit.js.map +1 -1
- package/dist/model/operations/ControlArea.d.ts +1 -0
- package/dist/model/operations/ControlArea.js +7 -6
- package/dist/model/operations/ControlArea.js.map +1 -1
- package/dist/model/operations/Outage.d.ts +6 -3
- package/dist/model/operations/Outage.js +9 -1
- package/dist/model/operations/Outage.js.map +1 -1
- package/dist/model/operations/SwitchAction.d.ts +6 -4
- package/dist/model/operations/SwitchAction.js +23 -18
- package/dist/model/operations/SwitchAction.js.map +1 -1
- package/dist/model/operations/SwitchingAction.d.ts +2 -2
- package/dist/model/operations/SwitchingAction.js +3 -0
- package/dist/model/operations/SwitchingAction.js.map +1 -1
- package/dist/model/operations/SwitchingPlan.d.ts +14 -3
- package/dist/model/operations/SwitchingPlan.js +27 -8
- package/dist/model/operations/SwitchingPlan.js.map +1 -1
- package/dist/model/statevariables/StateVariable.js +1 -0
- package/dist/model/statevariables/StateVariable.js.map +1 -1
- package/dist/model/statevariables/SvPowerFlow.d.ts +5 -4
- package/dist/model/statevariables/SvPowerFlow.js +33 -27
- package/dist/model/statevariables/SvPowerFlow.js.map +1 -1
- package/dist/model/statevariables/SvStatus.d.ts +1 -0
- package/dist/model/statevariables/SvStatus.js +8 -5
- package/dist/model/statevariables/SvStatus.js.map +1 -1
- package/dist/model/statevariables/SvTapStep.d.ts +1 -0
- package/dist/model/statevariables/SvTapStep.js +8 -4
- package/dist/model/statevariables/SvTapStep.js.map +1 -1
- package/dist/model/statevariables/SvVoltage.d.ts +4 -4
- package/dist/model/statevariables/SvVoltage.js +27 -23
- package/dist/model/statevariables/SvVoltage.js.map +1 -1
- package/dist/model/topology/TopologicalIsland.js +22 -20
- package/dist/model/topology/TopologicalIsland.js.map +1 -1
- package/dist/model/topology/TopologicalNode.d.ts +5 -4
- package/dist/model/topology/TopologicalNode.js +51 -35
- package/dist/model/topology/TopologicalNode.js.map +1 -1
- package/dist/model/wires/ACLineSegment.d.ts +9 -4
- package/dist/model/wires/ACLineSegment.js +85 -70
- package/dist/model/wires/ACLineSegment.js.map +1 -1
- package/dist/model/wires/AsynchronousMachine.d.ts +1 -0
- package/dist/model/wires/AsynchronousMachine.js +29 -18
- package/dist/model/wires/AsynchronousMachine.js.map +1 -1
- package/dist/model/wires/Breaker.d.ts +5 -4
- package/dist/model/wires/Breaker.js +34 -34
- package/dist/model/wires/Breaker.js.map +1 -1
- package/dist/model/wires/BusbarSection.d.ts +5 -4
- package/dist/model/wires/BusbarSection.js +27 -25
- package/dist/model/wires/BusbarSection.js.map +1 -1
- package/dist/model/wires/Clamp.js +10 -10
- package/dist/model/wires/Clamp.js.map +1 -1
- package/dist/model/wires/CompositeSwitch.js +1 -0
- package/dist/model/wires/CompositeSwitch.js.map +1 -1
- package/dist/model/wires/Conductor.d.ts +4 -3
- package/dist/model/wires/Conductor.js +6 -4
- package/dist/model/wires/Conductor.js.map +1 -1
- package/dist/model/wires/Disconnector.d.ts +5 -4
- package/dist/model/wires/Disconnector.js +36 -35
- package/dist/model/wires/Disconnector.js.map +1 -1
- package/dist/model/wires/EarthFaultCompensator.d.ts +1 -1
- package/dist/model/wires/EarthFaultCompensator.js +3 -2
- package/dist/model/wires/EarthFaultCompensator.js.map +1 -1
- package/dist/model/wires/EnergyConsumer.d.ts +9 -5
- package/dist/model/wires/EnergyConsumer.js +72 -49
- package/dist/model/wires/EnergyConsumer.js.map +1 -1
- package/dist/model/wires/EnergySource.d.ts +10 -5
- package/dist/model/wires/EnergySource.js +41 -24
- package/dist/model/wires/EnergySource.js.map +1 -1
- package/dist/model/wires/ExternalNetworkInjection.d.ts +5 -4
- package/dist/model/wires/ExternalNetworkInjection.js +122 -97
- package/dist/model/wires/ExternalNetworkInjection.js.map +1 -1
- package/dist/model/wires/Ground.js +14 -13
- package/dist/model/wires/Ground.js.map +1 -1
- package/dist/model/wires/GroundDisconnector.js +17 -13
- package/dist/model/wires/GroundDisconnector.js.map +1 -1
- package/dist/model/wires/GroundingImpedance.d.ts +1 -0
- package/dist/model/wires/GroundingImpedance.js +4 -2
- package/dist/model/wires/GroundingImpedance.js.map +1 -1
- package/dist/model/wires/Junction.d.ts +3 -2
- package/dist/model/wires/Junction.js +25 -24
- package/dist/model/wires/Junction.js.map +1 -1
- package/dist/model/wires/Line.d.ts +5 -4
- package/dist/model/wires/Line.js +33 -32
- package/dist/model/wires/Line.js.map +1 -1
- package/dist/model/wires/LinearShuntCompensator.d.ts +1 -0
- package/dist/model/wires/LinearShuntCompensator.js +19 -14
- package/dist/model/wires/LinearShuntCompensator.js.map +1 -1
- package/dist/model/wires/LoadBreakSwitch.d.ts +4 -4
- package/dist/model/wires/LoadBreakSwitch.js +34 -34
- package/dist/model/wires/LoadBreakSwitch.js.map +1 -1
- package/dist/model/wires/PetersenCoil.d.ts +4 -3
- package/dist/model/wires/PetersenCoil.js +50 -40
- package/dist/model/wires/PetersenCoil.js.map +1 -1
- package/dist/model/wires/PhaseTapChanger.js +3 -1
- package/dist/model/wires/PhaseTapChanger.js.map +1 -1
- package/dist/model/wires/PhaseTapChangerAsymmetrical.d.ts +1 -0
- package/dist/model/wires/PhaseTapChangerAsymmetrical.js +5 -3
- package/dist/model/wires/PhaseTapChangerAsymmetrical.js.map +1 -1
- package/dist/model/wires/PhaseTapChangerLinear.d.ts +1 -0
- package/dist/model/wires/PhaseTapChangerLinear.js +11 -7
- package/dist/model/wires/PhaseTapChangerLinear.js.map +1 -1
- package/dist/model/wires/PhaseTapChangerNonLinear.js +9 -6
- package/dist/model/wires/PhaseTapChangerNonLinear.js.map +1 -1
- package/dist/model/wires/PhaseTapChangerSymmetrical.d.ts +1 -0
- package/dist/model/wires/PhaseTapChangerSymmetrical.js +2 -1
- package/dist/model/wires/PhaseTapChangerSymmetrical.js.map +1 -1
- package/dist/model/wires/PhaseTapChangerTable.d.ts +1 -0
- package/dist/model/wires/PhaseTapChangerTable.js +5 -2
- package/dist/model/wires/PhaseTapChangerTable.js.map +1 -1
- package/dist/model/wires/PhaseTapChangerTablePoint.d.ts +1 -0
- package/dist/model/wires/PhaseTapChangerTablePoint.js +8 -4
- package/dist/model/wires/PhaseTapChangerTablePoint.js.map +1 -1
- package/dist/model/wires/PhaseTapChangerTabular.d.ts +1 -0
- package/dist/model/wires/PhaseTapChangerTabular.js +5 -2
- package/dist/model/wires/PhaseTapChangerTabular.js.map +1 -1
- package/dist/model/wires/Plant.js +1 -1
- package/dist/model/wires/Plant.js.map +1 -1
- package/dist/model/wires/PowerTransformer.d.ts +7 -5
- package/dist/model/wires/PowerTransformer.js +49 -48
- package/dist/model/wires/PowerTransformer.js.map +1 -1
- package/dist/model/wires/PowerTransformerEnd.d.ts +5 -4
- package/dist/model/wires/PowerTransformerEnd.js +69 -64
- package/dist/model/wires/PowerTransformerEnd.js.map +1 -1
- package/dist/model/wires/RatioTapChanger.d.ts +22 -0
- package/dist/model/wires/RatioTapChanger.js +35 -5
- package/dist/model/wires/RatioTapChanger.js.map +1 -1
- package/dist/model/wires/RatioTapChangerTable.d.ts +1 -0
- package/dist/model/wires/RatioTapChangerTable.js +5 -2
- package/dist/model/wires/RatioTapChangerTable.js.map +1 -1
- package/dist/model/wires/RatioTapChangerTablePoint.d.ts +1 -0
- package/dist/model/wires/RatioTapChangerTablePoint.js +6 -3
- package/dist/model/wires/RatioTapChangerTablePoint.js.map +1 -1
- package/dist/model/wires/ReactiveCapabilityCurve.d.ts +1 -0
- package/dist/model/wires/ReactiveCapabilityCurve.js +3 -2
- package/dist/model/wires/ReactiveCapabilityCurve.js.map +1 -1
- package/dist/model/wires/Recloser.js +10 -10
- package/dist/model/wires/Recloser.js.map +1 -1
- package/dist/model/wires/RegulatingCondEq.d.ts +3 -3
- package/dist/model/wires/RegulatingCondEq.js +10 -5
- package/dist/model/wires/RegulatingCondEq.js.map +1 -1
- package/dist/model/wires/RegulatingControl.d.ts +6 -4
- package/dist/model/wires/RegulatingControl.js +76 -54
- package/dist/model/wires/RegulatingControl.js.map +1 -1
- package/dist/model/wires/RotatingMachine.d.ts +3 -3
- package/dist/model/wires/RotatingMachine.js +33 -16
- package/dist/model/wires/RotatingMachine.js.map +1 -1
- package/dist/model/wires/SeriesCompensator.d.ts +5 -4
- package/dist/model/wires/SeriesCompensator.js +68 -61
- package/dist/model/wires/SeriesCompensator.js.map +1 -1
- package/dist/model/wires/ShuntCompensator.js +22 -13
- package/dist/model/wires/ShuntCompensator.js.map +1 -1
- package/dist/model/wires/StaticVarCompensator.d.ts +1 -0
- package/dist/model/wires/StaticVarCompensator.js +20 -13
- package/dist/model/wires/StaticVarCompensator.js.map +1 -1
- package/dist/model/wires/Switch.d.ts +6 -4
- package/dist/model/wires/Switch.js +64 -45
- package/dist/model/wires/Switch.js.map +1 -1
- package/dist/model/wires/SynchronousMachine.d.ts +5 -4
- package/dist/model/wires/SynchronousMachine.js +135 -104
- package/dist/model/wires/SynchronousMachine.js.map +1 -1
- package/dist/model/wires/TapChanger.js +32 -16
- package/dist/model/wires/TapChanger.js.map +1 -1
- package/dist/model/wires/TapChangerControl.js +2 -2
- package/dist/model/wires/TapChangerControl.js.map +1 -1
- package/dist/model/wires/TapChangerTablePoint.js +19 -12
- package/dist/model/wires/TapChangerTablePoint.js.map +1 -1
- package/dist/model/wires/TransformerEnd.d.ts +3 -3
- package/dist/model/wires/TransformerEnd.js +28 -9
- package/dist/model/wires/TransformerEnd.js.map +1 -1
- package/dist/model-container/enum/EVModelTypeKind.d.ts +4 -0
- package/dist/model-container/enum/EVModelTypeKind.js +9 -0
- package/dist/model-container/enum/EVModelTypeKind.js.map +1 -0
- package/dist/model-container/enum/EVObjectTypeKind.d.ts +143 -0
- package/dist/model-container/enum/EVObjectTypeKind.js +177 -0
- package/dist/model-container/enum/EVObjectTypeKind.js.map +1 -0
- package/dist/model-container/enum/EVOperationType.d.ts +4 -0
- package/dist/model-container/enum/EVOperationType.js +9 -0
- package/dist/model-container/enum/EVOperationType.js.map +1 -0
- package/dist/model-container/enum/EVSourceSystemKind.d.ts +8 -0
- package/dist/model-container/enum/EVSourceSystemKind.js +13 -0
- package/dist/model-container/enum/EVSourceSystemKind.js.map +1 -0
- package/dist/model-container/model/AMPRIONModelContainer.d.ts +101 -0
- package/dist/{model/extensions/amprion/model/AMPRIONModel.js → model-container/model/AMPRIONModelContainer.js} +77 -30
- package/dist/model-container/model/AMPRIONModelContainer.js.map +1 -0
- package/dist/model-container/model/EVModelContainer.d.ts +9 -0
- package/dist/model-container/model/EVModelContainer.js +29 -0
- package/dist/model-container/model/EVModelContainer.js.map +1 -0
- package/dist/model-container/model/EVModelsContainer.d.ts +51 -0
- package/dist/model-container/model/EVModelsContainer.js +268 -0
- package/dist/model-container/model/EVModelsContainer.js.map +1 -0
- package/dist/model-container/model/INTEGRALModelContainer.d.ts +14 -0
- package/dist/model-container/model/INTEGRALModelContainer.js +42 -0
- package/dist/model-container/model/INTEGRALModelContainer.js.map +1 -0
- package/dist/{model/model/Model.d.ts → model-container/model/ModelContainer.d.ts} +187 -90
- package/dist/model-container/model/ModelContainer.js +2254 -0
- package/dist/model-container/model/ModelContainer.js.map +1 -0
- package/dist/model-container/model/WNModelContainer.d.ts +12 -0
- package/dist/model-container/model/WNModelContainer.js +50 -0
- package/dist/model-container/model/WNModelContainer.js.map +1 -0
- package/dist/rdf/RdfBase.d.ts +10 -0
- package/dist/rdf/RdfBase.js +23 -0
- package/dist/rdf/RdfBase.js.map +1 -0
- package/dist/rdf/RdfClass.d.ts +20 -0
- package/dist/rdf/RdfClass.js +78 -0
- package/dist/rdf/RdfClass.js.map +1 -0
- package/dist/rdf/RdfEnum.d.ts +13 -0
- package/dist/rdf/RdfEnum.js +60 -0
- package/dist/rdf/RdfEnum.js.map +1 -0
- package/dist/rdf/RdfModel.d.ts +19 -0
- package/dist/rdf/RdfModel.js +64 -0
- package/dist/rdf/RdfModel.js.map +1 -0
- package/dist/rdf/RdfProperty.d.ts +20 -0
- package/dist/rdf/RdfProperty.js +84 -0
- package/dist/rdf/RdfProperty.js.map +1 -0
- package/dist/rdf/rdf-enums.d.ts +18 -0
- package/dist/rdf/rdf-enums.js +25 -0
- package/dist/rdf/rdf-enums.js.map +1 -0
- package/dist/rdf/rdf-interfaces.d.ts +4 -0
- package/dist/rdf/rdf-interfaces.js +3 -0
- package/dist/rdf/rdf-interfaces.js.map +1 -0
- package/dist/types/cim.types.d.ts +9 -0
- package/dist/types/cim.types.js +3 -0
- package/dist/types/cim.types.js.map +1 -0
- package/dist/util/collection/util-dot.js +2 -1
- package/dist/util/collection/util-dot.js.map +1 -1
- package/dist/util/collection/util-excel.d.ts +12 -0
- package/dist/util/collection/util-excel.js +20 -6
- package/dist/util/collection/util-excel.js.map +1 -1
- package/dist/util/collection/util-graph.d.ts +31 -1
- package/dist/util/collection/util-graph.js +54 -4
- package/dist/util/collection/util-graph.js.map +1 -1
- package/dist/util/collection/util-graph2tree.d.ts +26 -2
- package/dist/util/collection/util-graph2tree.js +138 -13
- package/dist/util/collection/util-graph2tree.js.map +1 -1
- package/dist/util/collection/util-tree.d.ts +14 -1
- package/dist/util/collection/util-tree.js +13 -0
- package/dist/util/collection/util-tree.js.map +1 -1
- package/dist/util/database/mysql-controller.js +8 -10
- package/dist/util/database/mysql-controller.js.map +1 -1
- package/dist/util/sparql/sparql-utils.d.ts +21 -0
- package/dist/util/sparql/sparql-utils.js +34 -10
- package/dist/util/sparql/sparql-utils.js.map +1 -1
- package/dist/util/util-create.d.ts +19 -12
- package/dist/util/util-create.js +33 -13
- package/dist/util/util-create.js.map +1 -1
- package/dist/util/util-search.d.ts +1 -0
- package/dist/util/util-search.js +15 -1
- package/dist/util/util-search.js.map +1 -1
- package/dist/util/util-test.d.ts +11 -9
- package/dist/util/util-test.js +171 -175
- package/dist/util/util-test.js.map +1 -1
- package/dist/util/util-topology.d.ts +16 -6
- package/dist/util/util-topology.js +26 -1
- package/dist/util/util-topology.js.map +1 -1
- package/dist/util/utils.d.ts +24 -6
- package/dist/util/utils.js +60 -25
- package/dist/util/utils.js.map +1 -1
- package/dist/util/xml/utils.parser.js +2 -2
- package/dist/util/xml/utils.parser.js.map +1 -1
- package/dist/util/xml/xml.parser.d.ts +2 -2
- package/dist/util/xml/xml.parser.js +14 -8
- package/dist/util/xml/xml.parser.js.map +1 -1
- package/dist/util/xml/xml.serializer.d.ts +5 -5
- package/dist/util/xml/xml.serializer.js +120 -22
- package/dist/util/xml/xml.serializer.js.map +1 -1
- package/dist/utils2/cim-to-db.d.ts +11 -0
- package/dist/utils2/cim-to-db.js +46 -0
- package/dist/utils2/cim-to-db.js.map +1 -0
- package/dist/utils2/cim.model.utils.d.ts +25 -0
- package/dist/utils2/cim.model.utils.js +428 -0
- package/dist/utils2/cim.model.utils.js.map +1 -0
- package/dist/utils2/common.utils.d.ts +33 -0
- package/dist/utils2/common.utils.js +89 -0
- package/dist/utils2/common.utils.js.map +1 -0
- package/dist/utils2/fuseki.utils.d.ts +43 -0
- package/dist/utils2/fuseki.utils.js +66 -0
- package/dist/utils2/fuseki.utils.js.map +1 -0
- package/dist/utils2/import.utils.d.ts +7 -0
- package/dist/utils2/import.utils.js +40 -0
- package/dist/utils2/import.utils.js.map +1 -0
- package/dist/utils2/model.modification.utils.d.ts +139 -0
- package/dist/utils2/model.modification.utils.js +545 -0
- package/dist/utils2/model.modification.utils.js.map +1 -0
- package/dist/utils2/parser.utils.d.ts +15 -0
- package/dist/utils2/parser.utils.js +141 -0
- package/dist/utils2/parser.utils.js.map +1 -0
- package/dist/utils2/rdf.model.utils.d.ts +7 -0
- package/dist/utils2/rdf.model.utils.js +33 -0
- package/dist/utils2/rdf.model.utils.js.map +1 -0
- package/dist/utils2/sparql.utils.d.ts +40 -0
- package/dist/utils2/sparql.utils.js +330 -0
- package/dist/utils2/sparql.utils.js.map +1 -0
- package/package.json +7 -5
- package/dist/config/config.utils.d.ts +0 -1
- package/dist/config/config.utils.js +0 -38
- package/dist/config/config.utils.js.map +0 -1
- package/dist/config/default/default-load.config.d.ts +0 -1
- package/dist/config/default/default-load.config.js +0 -43
- package/dist/config/default/default-load.config.js.map +0 -1
- package/dist/config/lew-sincal/lew-sincal-load.config.d.ts +0 -1
- package/dist/config/lew-sincal/lew-sincal-load.config.js +0 -46
- package/dist/config/lew-sincal/lew-sincal-load.config.js.map +0 -1
- package/dist/config/power-system-datamodel/psdm-load.config.d.ts +0 -1
- package/dist/config/power-system-datamodel/psdm-load.config.js +0 -48
- package/dist/config/power-system-datamodel/psdm-load.config.js.map +0 -1
- package/dist/config/westnetz-integral7/integral7-load.config.d.ts +0 -1
- package/dist/config/westnetz-integral7/integral7-load.config.js +0 -47
- package/dist/config/westnetz-integral7/integral7-load.config.js.map +0 -1
- package/dist/config/westnetz-neplan/neplan-load.config.d.ts +0 -2
- package/dist/config/westnetz-neplan/neplan-load.config.js +0 -97
- package/dist/config/westnetz-neplan/neplan-load.config.js.map +0 -1
- package/dist/constants/cim-class-definition.d.ts +0 -1
- package/dist/constants/cim-class-definition.js +0 -210
- package/dist/constants/cim-class-definition.js.map +0 -1
- package/dist/constants/cim.sourcesystem.d.ts +0 -6
- package/dist/constants/cim.sourcesystem.js +0 -11
- package/dist/constants/cim.sourcesystem.js.map +0 -1
- package/dist/constants/init-data/ASSET_HEALTH_EVENTS.d.ts +0 -1
- package/dist/constants/init-data/ASSET_HEALTH_EVENTS.js +0 -59
- package/dist/constants/init-data/ASSET_HEALTH_EVENTS.js.map +0 -1
- package/dist/constants/init-data/ASSSET_OWNER.d.ts +0 -1
- package/dist/constants/init-data/ASSSET_OWNER.js +0 -24
- package/dist/constants/init-data/ASSSET_OWNER.js.map +0 -1
- package/dist/constants/init-data/JENA_SPARQL.d.ts +0 -11
- package/dist/constants/init-data/JENA_SPARQL.js +0 -328
- package/dist/constants/init-data/JENA_SPARQL.js.map +0 -1
- package/dist/constants/init-data/PSR_TYPES.d.ts +0 -1
- package/dist/constants/init-data/PSR_TYPES.js +0 -103
- package/dist/constants/init-data/PSR_TYPES.js.map +0 -1
- package/dist/constants/init-data/RZ.d.ts +0 -1
- package/dist/constants/init-data/RZ.js +0 -61
- package/dist/constants/init-data/RZ.js.map +0 -1
- package/dist/constants/init-data/xml/settings.d.ts +0 -1
- package/dist/constants/init-data/xml/settings.js +0 -70
- package/dist/constants/init-data/xml/settings.js.map +0 -1
- package/dist/constants/util-init.d.ts +0 -1
- package/dist/constants/util-init.js +0 -17
- package/dist/constants/util-init.js.map +0 -1
- package/dist/converter/integral7/ConverterIntegral7.d.ts +0 -200
- package/dist/converter/integral7/ConverterIntegral7.js +0 -4100
- package/dist/converter/integral7/ConverterIntegral7.js.map +0 -1
- package/dist/converter/integral7/converter-i7.d.ts +0 -174
- package/dist/converter/integral7/converter-i7.js +0 -5433
- package/dist/converter/integral7/converter-i7.js.map +0 -1
- package/dist/model/extensions/amprion/model/AMPRIONModel.d.ts +0 -80
- package/dist/model/extensions/amprion/model/AMPRIONModel.js.map +0 -1
- package/dist/model/extensions/enervance/model/EVModel.d.ts +0 -11
- package/dist/model/extensions/enervance/model/EVModel.js +0 -45
- package/dist/model/extensions/enervance/model/EVModel.js.map +0 -1
- package/dist/model/extensions/integral/model/INTEGRALModel.d.ts +0 -8
- package/dist/model/extensions/integral/model/INTEGRALModel.js +0 -19
- package/dist/model/extensions/integral/model/INTEGRALModel.js.map +0 -1
- package/dist/model/model/Model.js +0 -1206
- package/dist/model/model/Model.js.map +0 -1
- package/dist/util/cim.model.util.d.ts +0 -4
- package/dist/util/cim.model.util.js +0 -257
- package/dist/util/cim.model.util.js.map +0 -1
|
@@ -0,0 +1,1427 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DLConverterI7 = void 0;
|
|
4
|
+
const integral_sql_1 = require("../sql/integral.sql");
|
|
5
|
+
const Diagram_1 = require("../../../model/diagram/Diagram");
|
|
6
|
+
const utils_1 = require("../../../util/utils");
|
|
7
|
+
const OrientationKind_1 = require("../../../model/diagram/OrientationKind");
|
|
8
|
+
const cim_constants_1 = require("../../../constants/cim-constants");
|
|
9
|
+
const DiagramStyle_1 = require("../../../model/diagram/DiagramStyle");
|
|
10
|
+
const perf_hooks_1 = require("perf_hooks");
|
|
11
|
+
const util_functions_1 = require("../model/dl-utils/util-functions");
|
|
12
|
+
const constants_1 = require("../model/dl-utils/constants");
|
|
13
|
+
const DiagramObject_1 = require("../../../model/diagram/DiagramObject");
|
|
14
|
+
const DiagramObjectPoint_1 = require("../../../model/diagram/DiagramObjectPoint");
|
|
15
|
+
const utils_schema_1 = require("../utils-schema");
|
|
16
|
+
const data_types_1 = require("./db/data.types");
|
|
17
|
+
const ConnectivityNode_1 = require("../../../model/core/ConnectivityNode");
|
|
18
|
+
const ConductingEquipment_1 = require("../../../model/core/ConductingEquipment");
|
|
19
|
+
const BusbarSection_1 = require("../../../model/wires/BusbarSection");
|
|
20
|
+
const ACLineSegment_1 = require("../../../model/wires/ACLineSegment");
|
|
21
|
+
const ModelContainer_1 = require("../../../model-container/model/ModelContainer");
|
|
22
|
+
class DLConverterI7 {
|
|
23
|
+
/** key: VariantenNr (integral7) | value: corresponding diagram */
|
|
24
|
+
static variantenNr2Diagram = new Map();
|
|
25
|
+
/** key: Data-Type | value: Array of JSON-stringified I7SchemaKeyObjects */
|
|
26
|
+
static type2i7IDs = new Map();
|
|
27
|
+
/** key: JSON-stringified I7SchemaKeyObject | value: CimUUIDsEntry */
|
|
28
|
+
static i7ID2cimUUIDs = new Map();
|
|
29
|
+
/** key: JSON-stringified I7SchemaKeyObject | value: Data-Type */
|
|
30
|
+
static i7ID2Type = new Map();
|
|
31
|
+
/** key: JSON-stringified I7SchemaKeyObject | value: schema database object (integral) */
|
|
32
|
+
static i7ID2DbNsgObject = new Map();
|
|
33
|
+
/** key: uuid of cim-net object or diagram object | value: JSON-stringified I7SchemaKeyObject */
|
|
34
|
+
static cimUUID2i7ID = new Map();
|
|
35
|
+
static cimUUID2Object = new Map();
|
|
36
|
+
static cimUUID2DiagramObject = new Map();
|
|
37
|
+
i7TableName2Table;
|
|
38
|
+
mysqlController;
|
|
39
|
+
logger;
|
|
40
|
+
activeDiagram;
|
|
41
|
+
inputArgs;
|
|
42
|
+
/** key: JSON-stringified I7SchemaKeyObject | value: schema database object (integral) */
|
|
43
|
+
static i7ID2DbNsgObjectInFrame = new Map();
|
|
44
|
+
/** this flag is being used for testings, so that the data is not being purged and can be simply checked afterwards */
|
|
45
|
+
static purgeData = true;
|
|
46
|
+
static cimModelObjects = new ModelContainer_1.ModelContainer();
|
|
47
|
+
constructor() {
|
|
48
|
+
}
|
|
49
|
+
static addCimObjects(...objs) {
|
|
50
|
+
for (const obj of objs) {
|
|
51
|
+
DLConverterI7.cimUUID2Object.set(obj.getUUID(), obj);
|
|
52
|
+
if (obj instanceof DiagramObject_1.DiagramObject) {
|
|
53
|
+
DLConverterI7.cimUUID2Object.set(obj.getIdentifiedObjectUUID(), obj);
|
|
54
|
+
DLConverterI7.cimUUID2DiagramObject.set(obj.getUUID(), obj);
|
|
55
|
+
DLConverterI7.cimUUID2DiagramObject.set(obj.getIdentifiedObjectUUID(), obj);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
static getCimObjectByUUID(uuid) {
|
|
60
|
+
return DLConverterI7.cimUUID2Object.get(uuid);
|
|
61
|
+
}
|
|
62
|
+
static getDiagramObjectByUUID(uuid) {
|
|
63
|
+
return DLConverterI7.cimUUID2DiagramObject.get(uuid);
|
|
64
|
+
}
|
|
65
|
+
static createSchemaKeyObject(arg) {
|
|
66
|
+
return JSON.stringify(arg);
|
|
67
|
+
}
|
|
68
|
+
static parseSchemaKeyObject(key) {
|
|
69
|
+
return JSON.parse(key);
|
|
70
|
+
}
|
|
71
|
+
static addIDsRelationMapping(i7ID, cimUUIDs) {
|
|
72
|
+
DLConverterI7.i7ID2cimUUIDs.set(i7ID, cimUUIDs);
|
|
73
|
+
if (cimUUIDs.identifiedObjectUUID) {
|
|
74
|
+
DLConverterI7.cimUUID2i7ID.set(cimUUIDs.identifiedObjectUUID, i7ID);
|
|
75
|
+
}
|
|
76
|
+
if (cimUUIDs.diagramObjectUUID) {
|
|
77
|
+
DLConverterI7.cimUUID2i7ID.set(cimUUIDs.diagramObjectUUID, i7ID);
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
static addID2TypeMapping(i7ID, tpe) {
|
|
81
|
+
DLConverterI7.i7ID2Type.set(i7ID, tpe);
|
|
82
|
+
if (!DLConverterI7.type2i7IDs.has(tpe)) {
|
|
83
|
+
DLConverterI7.type2i7IDs.set(tpe, []);
|
|
84
|
+
}
|
|
85
|
+
DLConverterI7.type2i7IDs.get(tpe).push(i7ID);
|
|
86
|
+
}
|
|
87
|
+
static addID2DbNsgObjectMapping(i7ID, dbNsgObject) {
|
|
88
|
+
DLConverterI7.i7ID2DbNsgObject.set(i7ID, dbNsgObject);
|
|
89
|
+
DLConverterI7.i7ID2DbNsgObjectInFrame.set(i7ID, dbNsgObject);
|
|
90
|
+
}
|
|
91
|
+
static getDbNsgObjectByID(i7ID) {
|
|
92
|
+
return DLConverterI7.i7ID2DbNsgObject.get(i7ID);
|
|
93
|
+
}
|
|
94
|
+
cleanUp() {
|
|
95
|
+
DLConverterI7.i7ID2DbNsgObjectInFrame.clear();
|
|
96
|
+
DLConverterI7.variantenNr2Diagram.clear();
|
|
97
|
+
// TODO cleanup every relevant map
|
|
98
|
+
if (!DLConverterI7.purgeData)
|
|
99
|
+
return;
|
|
100
|
+
// i7ID2cimUUIDs no clear cause of: lines
|
|
101
|
+
// i7ID2DbNsgObject no clear cause of: lines
|
|
102
|
+
// i7ID2Type no clear cause of: lines
|
|
103
|
+
DLConverterI7.type2i7IDs.clear();
|
|
104
|
+
DLConverterI7.cimUUID2i7ID.clear();
|
|
105
|
+
DLConverterI7.cimUUID2Object.clear();
|
|
106
|
+
}
|
|
107
|
+
prepare(mysqlController, logger) {
|
|
108
|
+
this.mysqlController = mysqlController;
|
|
109
|
+
this.logger = logger;
|
|
110
|
+
}
|
|
111
|
+
static getI7ID2DiagramObjectMap() {
|
|
112
|
+
const i7ID2DiagramObjectMap = new Map();
|
|
113
|
+
for (const i7ID2cimUUIDsEntry of DLConverterI7.i7ID2cimUUIDs.entries()) {
|
|
114
|
+
const diagramObject = DLConverterI7.cimUUID2DiagramObject.get(i7ID2cimUUIDsEntry[1].diagramObjectUUID);
|
|
115
|
+
i7ID2DiagramObjectMap.set(i7ID2cimUUIDsEntry[0], diagramObject);
|
|
116
|
+
}
|
|
117
|
+
return i7ID2DiagramObjectMap;
|
|
118
|
+
}
|
|
119
|
+
addCimObjects2Model(cimModel) {
|
|
120
|
+
for (const entry of DLConverterI7.cimUUID2Object.entries()) {
|
|
121
|
+
if (entry[1] instanceof Diagram_1.Diagram) {
|
|
122
|
+
cimModel.addDiagram(entry[1]);
|
|
123
|
+
}
|
|
124
|
+
else if (entry[1] instanceof DiagramObject_1.DiagramObject) {
|
|
125
|
+
cimModel.addDiagramObject(entry[1]);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
async convert(availableTablesWithColumnNames, onlyEingeblendet, args) {
|
|
130
|
+
this.inputArgs = args;
|
|
131
|
+
this.inputArgs.objects.forEach((value, key) => DLConverterI7.cimModelObjects.objects.set(key, value));
|
|
132
|
+
this.i7TableName2Table = new Map();
|
|
133
|
+
availableTablesWithColumnNames.forEach((value, key) => {
|
|
134
|
+
this.i7TableName2Table.set(key, { tableName: key, columnNames: value });
|
|
135
|
+
});
|
|
136
|
+
await this.runAndLogPerformance(this.convertNsgVarianten);
|
|
137
|
+
let a = 0;
|
|
138
|
+
for (const entry of DLConverterI7.variantenNr2Diagram.entries()) {
|
|
139
|
+
++a;
|
|
140
|
+
const variantenNr = entry[0];
|
|
141
|
+
this.activeDiagram = entry[1];
|
|
142
|
+
this.logger.debug(`Starte Konvertierung von Schema ${variantenNr} [${a}/${DLConverterI7.variantenNr2Diagram.size}]`);
|
|
143
|
+
console.log(`Starte Konvertierung von Schema ${variantenNr} [${a}/${DLConverterI7.variantenNr2Diagram.size}]`);
|
|
144
|
+
const startTime = perf_hooks_1.performance.now();
|
|
145
|
+
const ret_val = await this.convertSchemaStandorte(variantenNr, onlyEingeblendet, args.standortIDs);
|
|
146
|
+
this.logger.debug(`convertSchemaStandorte ${(perf_hooks_1.performance.now() - startTime) / 1000} seconds`);
|
|
147
|
+
console.log(`convertSchemaStandorte ${(perf_hooks_1.performance.now() - startTime) / 1000} seconds`);
|
|
148
|
+
if (ret_val) {
|
|
149
|
+
await this.runAndLogPerformance(this.convertSchemaStandorte, variantenNr, onlyEingeblendet, args.standortIDs);
|
|
150
|
+
await this.runAndLogPerformance(this.convertSchemaKnotenSo, variantenNr, onlyEingeblendet, args.knotenSoIDs);
|
|
151
|
+
await this.runAndLogPerformance(this.convertSchemaSchaltanlage, variantenNr, onlyEingeblendet, args.schaltanlagenIDs);
|
|
152
|
+
await this.runAndLogPerformance(this.convertSchemaSchaltanlagenAbschnitte, variantenNr, onlyEingeblendet, args.schaltanlagenAbschnittIDs);
|
|
153
|
+
await this.runAndLogPerformance(this.convertSchemaSammelschienenAbschnitte, variantenNr, onlyEingeblendet, args.schaltanlagenAbschnittIDs);
|
|
154
|
+
await this.runAndLogPerformance(this.convertSchemaSchaltfeldElemente, variantenNr, onlyEingeblendet, args.schaltfeldIDs);
|
|
155
|
+
await this.runAndLogPerformance(this.convertSchemaQuerkupplungen, variantenNr, onlyEingeblendet, args.querkupplungIDs);
|
|
156
|
+
await this.runAndLogPerformance(this.convertSchemaLaengskupplungen, variantenNr, onlyEingeblendet, args.laengskupplungIDs);
|
|
157
|
+
await this.runAndLogPerformance(this.convertSchemaTransformatoren2W, variantenNr, onlyEingeblendet, args.powerTransformers);
|
|
158
|
+
await this.runAndLogPerformance(this.convertSchemaTransformatoren3W, variantenNr, onlyEingeblendet, args.powerTransformers);
|
|
159
|
+
await this.runAndLogPerformance(this.convertSchemaLeitungen, variantenNr, onlyEingeblendet);
|
|
160
|
+
await this.runAndLogPerformance(this.convertSchemaQuerzweige, variantenNr, onlyEingeblendet);
|
|
161
|
+
await this.runAndLogPerformance(this.convertSchemaTerminals);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
async convertNsgVarianten() {
|
|
166
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NETZVARIANTEN)) {
|
|
167
|
+
const result = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NETZVARIANTEN, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NETZVARIANTEN), [2]));
|
|
168
|
+
for (const i7Data of result) {
|
|
169
|
+
const diagram = new Diagram_1.Diagram((0, utils_1.getUUID)(i7Data.guid), i7Data.name, String(i7Data.id));
|
|
170
|
+
diagram.orientation = OrientationKind_1.OrientationKind.negative;
|
|
171
|
+
diagram.diagramStyle = new DiagramStyle_1.DiagramStyle((0, utils_1.generateUUID)(), cim_constants_1.DIAGRAM_LAYOUT_TYPES.NODE_BREAKER);
|
|
172
|
+
DLConverterI7.addCimObjects(diagram);
|
|
173
|
+
DLConverterI7.variantenNr2Diagram.set(i7Data.id, diagram);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
else {
|
|
177
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NETZVARIANTEN} ist nicht vorhanden.`);
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
/** Register the NsgObject and perform a type mapping. Returns a SchemaKeyObject*/
|
|
181
|
+
static registerNsgObjectAndGetSchemaKay(i7Data, type, keyObject) {
|
|
182
|
+
const schemaObjKey = DLConverterI7.createSchemaKeyObject(keyObject === undefined ?
|
|
183
|
+
{ i7ID: i7Data.id, variantenNr: i7Data.variantennr }
|
|
184
|
+
: keyObject);
|
|
185
|
+
DLConverterI7.addID2TypeMapping(schemaObjKey, type);
|
|
186
|
+
DLConverterI7.addID2DbNsgObjectMapping(schemaObjKey, i7Data);
|
|
187
|
+
return schemaObjKey;
|
|
188
|
+
}
|
|
189
|
+
async convertSchemaStandorte(variantenNr, onlyEingeblendet, standortIDs) {
|
|
190
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_STANDORT) && standortIDs.length > 0) {
|
|
191
|
+
const result = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_STANDORT, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_STANDORT), standortIDs));
|
|
192
|
+
const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
|
|
193
|
+
for (const i7Data of filteredResults) {
|
|
194
|
+
DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, data_types_1.DataTypes.NSG_STANDORT);
|
|
195
|
+
}
|
|
196
|
+
return filteredResults.length > 0;
|
|
197
|
+
}
|
|
198
|
+
return false;
|
|
199
|
+
}
|
|
200
|
+
async convertSchemaKnotenSo(variantenNr, onlyEingeblendet, knotenSoIDs) {
|
|
201
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) && knotenSoIDs.length > 0) {
|
|
202
|
+
const result = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_KNOTEN_SO, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO), knotenSoIDs));
|
|
203
|
+
const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
|
|
204
|
+
for (const i7Data of filteredResults) {
|
|
205
|
+
const schemaObjKey = DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO);
|
|
206
|
+
const nsgStandortObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.nsgso, variantenNr });
|
|
207
|
+
const nsgStandort = DLConverterI7.getDbNsgObjectByID(nsgStandortObjKey);
|
|
208
|
+
if (nsgStandort === undefined) {
|
|
209
|
+
continue;
|
|
210
|
+
}
|
|
211
|
+
const cimObjectUUID = this.inputArgs.integralID2UUID.get(i7Data.knotenso);
|
|
212
|
+
const width = constants_1.NsgConstants.KNOTENSO_WIDTH;
|
|
213
|
+
const height = constants_1.NsgConstants.KNOTENSO_HEIGHT;
|
|
214
|
+
const xParentRel = nsgStandort.xrel;
|
|
215
|
+
const yParentRel = nsgStandort.yrel;
|
|
216
|
+
const diagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
217
|
+
xPosition: xParentRel + i7Data.xrel + (width / 2),
|
|
218
|
+
yPosition: yParentRel + i7Data.yrel + (height / 2),
|
|
219
|
+
diagramObjectName: 'Abzweig',
|
|
220
|
+
identifiedObjectUUID: cimObjectUUID,
|
|
221
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
222
|
+
});
|
|
223
|
+
DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
224
|
+
identifiedObjectUUID: cimObjectUUID,
|
|
225
|
+
diagramObjectUUID: diagramObject.getUUID()
|
|
226
|
+
});
|
|
227
|
+
DLConverterI7.addCimObjects(diagramObject);
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
else {
|
|
231
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO} ist nicht vorhanden.`);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
async convertSchemaSchaltanlage(variantenNr, onlyEingeblendet, schaltanlagenIDs) {
|
|
235
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE) && schaltanlagenIDs.length > 0) {
|
|
236
|
+
const result = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_SCHALTANLAGE, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE), schaltanlagenIDs));
|
|
237
|
+
const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
|
|
238
|
+
for (const i7Data of filteredResults) {
|
|
239
|
+
DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
else {
|
|
243
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGE} ist nicht vorhanden.`);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
async convertSchemaSchaltanlagenAbschnitte(variantenNr, onlyEingeblendet, schaltanlagenabschnittIDs) {
|
|
247
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT) && schaltanlagenabschnittIDs.length > 0) {
|
|
248
|
+
const result = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_SCHALTANLAGENABSCHNITT, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT), schaltanlagenabschnittIDs));
|
|
249
|
+
const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(result, variantenNr, onlyEingeblendet);
|
|
250
|
+
for (const i7Data of filteredResults) {
|
|
251
|
+
const schemaObjKey = DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT);
|
|
252
|
+
const nsgSchaltanlageObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.nsgsa, variantenNr });
|
|
253
|
+
const nsgSchaltanlage = DLConverterI7.getDbNsgObjectByID(nsgSchaltanlageObjKey);
|
|
254
|
+
if (nsgSchaltanlage) {
|
|
255
|
+
if (nsgSchaltanlage.saabschnittIDs === undefined) {
|
|
256
|
+
nsgSchaltanlage.saabschnittIDs = [];
|
|
257
|
+
}
|
|
258
|
+
nsgSchaltanlage.saabschnittIDs.push(schemaObjKey);
|
|
259
|
+
if (nsgSchaltanlage.nsgSaabs === undefined) {
|
|
260
|
+
nsgSchaltanlage.nsgSaabs = [];
|
|
261
|
+
}
|
|
262
|
+
nsgSchaltanlage.nsgSaabs.push(i7Data);
|
|
263
|
+
}
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
else {
|
|
267
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT} ist nicht vorhanden.`);
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
async convertSchemaSammelschienenAbschnitte(variantenNr, onlyEingeblendet, schaltanlagenabschnittIDs) {
|
|
271
|
+
if (schaltanlagenabschnittIDs.length <= 0)
|
|
272
|
+
return;
|
|
273
|
+
/* Hinweis: => eingeblendet - ausgeblendet
|
|
274
|
+
Die wahre Länge eines SSAbschnitts steht nicht in dem Längenattribut 'nsg_nsgsaab.laenge'
|
|
275
|
+
sondern muss über die nsg_nsgschaltfeld-Tabelle ermittelt werden.
|
|
276
|
+
Der Längen-Wert von 'nsg_nsgsaab.laenge' bezieht sich auf die Länge mit allen eingeblendeten Attributen
|
|
277
|
+
*/
|
|
278
|
+
const isEingeblendet = 1;
|
|
279
|
+
/* BEGIN: Select-Statement zum ermitteln der maximalen Slotnummer bezogen auf spezifische Schaltanlagen und Schaltfelder */
|
|
280
|
+
let sqlSelectGroupedMaxSlotSf = `SELECT nsgsaa AS nsgsaa, max(slotnummer) + 1 AS laenge
|
|
281
|
+
FROM nsg_nsgschaltfeld
|
|
282
|
+
WHERE ((${(0, integral_sql_1.getWhereIDs)('nsgsaa', schaltanlagenabschnittIDs).join(' OR ')}))`;
|
|
283
|
+
if (onlyEingeblendet) {
|
|
284
|
+
sqlSelectGroupedMaxSlotSf += ` AND (eingeblendet = ${isEingeblendet} OR (eingeblendet IS NULL AND angezeigt = ${isEingeblendet}))`;
|
|
285
|
+
}
|
|
286
|
+
sqlSelectGroupedMaxSlotSf += ` GROUP BY nsgsaa`;
|
|
287
|
+
const resultsMaxSlotsSf = await this.mysqlController.execQuery(sqlSelectGroupedMaxSlotSf);
|
|
288
|
+
const mappedResultsMaxSlotsSf = new Map(resultsMaxSlotsSf.map(value => [value.nsgsaa, value.laenge]));
|
|
289
|
+
/* END: Schaltfelder-SQL (max slotnummer) */
|
|
290
|
+
/* BEGIN: Select-Statement zum ermitteln der maximalen Slotnummer bezogen auf spezifische Schaltanlagen und Kuppelfelder */
|
|
291
|
+
let sqlSelectGroupedMaxSlotKpF = `SELECT nsgsaa AS nsgsaa, max(slotnummer) + 1 AS laenge
|
|
292
|
+
FROM nsg_nsgkpfeld
|
|
293
|
+
WHERE ((${(0, integral_sql_1.getWhereIDs)('nsgsaa', schaltanlagenabschnittIDs).join(' OR ')}))`;
|
|
294
|
+
if (onlyEingeblendet) {
|
|
295
|
+
sqlSelectGroupedMaxSlotKpF += ` AND (eingeblendet = ${isEingeblendet} OR (eingeblendet IS NULL AND angezeigt = ${isEingeblendet}))`;
|
|
296
|
+
}
|
|
297
|
+
sqlSelectGroupedMaxSlotKpF += ` GROUP BY nsgsaa`;
|
|
298
|
+
const resultsMaxSlotsKpF = await this.mysqlController.execQuery(sqlSelectGroupedMaxSlotKpF);
|
|
299
|
+
const mappedResultsMaxSlotsKpF = new Map(resultsMaxSlotsKpF.map(value => [value.nsgsaa, value.laenge]));
|
|
300
|
+
/* END: Kuppelfelder-SQL (max slotnummer) */
|
|
301
|
+
const sqlStatement = `SELECT nsg_nsgsaab.variantennr,
|
|
302
|
+
nsg_nsgsaab.id,
|
|
303
|
+
nsg_nsgsaab.laenge AS laenge,
|
|
304
|
+
nsg_nsgsaab.nslots,
|
|
305
|
+
nsg_nsgsaab.saabschnitt,
|
|
306
|
+
nsg_nsgsaab.nsgsa,
|
|
307
|
+
nsg_nsgsaab.angezeigt,
|
|
308
|
+
nsg_nsgsaab.eingeblendet,
|
|
309
|
+
nsg_nsgsaab.nsglkp,
|
|
310
|
+
netz_ssab.pos AS posSSAB,
|
|
311
|
+
netz_ssab.id AS idSSAB
|
|
312
|
+
FROM netz_ssab
|
|
313
|
+
LEFT JOIN nsg_nsgsaabschnitt AS nsg_nsgsaab ON nsg_nsgsaab.saabschnitt = netz_ssab.saabschnitt
|
|
314
|
+
WHERE (${(0, integral_sql_1.getWhereIDs)('nsg_nsgsaab.saabschnitt', schaltanlagenabschnittIDs).join(' OR ')});`;
|
|
315
|
+
const queryResults = await this.mysqlController.execQuery(sqlStatement);
|
|
316
|
+
queryResults.forEach(value => {
|
|
317
|
+
value.laenge = Math.max((mappedResultsMaxSlotsSf.get(value.id) || 0), (mappedResultsMaxSlotsKpF.get(value.id) || 0), value.laenge);
|
|
318
|
+
});
|
|
319
|
+
const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(queryResults, variantenNr, onlyEingeblendet);
|
|
320
|
+
for (const i7Data of filteredResults) {
|
|
321
|
+
const schemaObjKey = DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, data_types_1.DataTypes.NSG_SSAB, { i7ID: i7Data.idSSAB, variantenNr, additionalIDs: [i7Data.nsgsa] });
|
|
322
|
+
const nsgSchaltanlageObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.nsgsa, variantenNr });
|
|
323
|
+
const nsgSa = DLConverterI7.getDbNsgObjectByID(nsgSchaltanlageObjKey);
|
|
324
|
+
if (nsgSa === undefined)
|
|
325
|
+
continue;
|
|
326
|
+
const nsgStandortObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: nsgSa.nsgso, variantenNr });
|
|
327
|
+
const nsgSo = DLConverterI7.getDbNsgObjectByID(nsgStandortObjKey);
|
|
328
|
+
// Standort ist vermutlich ausgeblendet und daher undefined. Exportiere deshalb die Sammelschienen bezogen auf die Schaltanlage auch nicht
|
|
329
|
+
if (nsgSo === undefined)
|
|
330
|
+
continue;
|
|
331
|
+
// Sammelschienen sind in einem Grid angeordnet basierend auf den Positionswerten in
|
|
332
|
+
// der Netz-Abschnitts- und -Sammelschienentabelle
|
|
333
|
+
const leftOffset = i7Data.nslots * constants_1.NsgConstants.HORIZONTAL_OFFSET;
|
|
334
|
+
const topOffset = i7Data.posSSAB * constants_1.NsgConstants.VERTICAL_OFFSET;
|
|
335
|
+
const ssabLength = i7Data.laenge * constants_1.NsgConstants.HORIZONTAL_OFFSET;
|
|
336
|
+
let pointTopLeft = new DiagramObjectPoint_1.DiagramObjectPoint(leftOffset, topOffset, 1);
|
|
337
|
+
let pointBottomRight = new DiagramObjectPoint_1.DiagramObjectPoint(leftOffset + ssabLength, topOffset, 2);
|
|
338
|
+
// let pointTopLeft = new DiagramObjectPoint(0, topOffset, 1);
|
|
339
|
+
// let pointBottomRight = new DiagramObjectPoint(ssabLength, topOffset, 2);
|
|
340
|
+
let saabShiftOffset = 0;
|
|
341
|
+
for (const tempNsgSaab of nsgSa.nsgSaabs) {
|
|
342
|
+
saabShiftOffset = saabShiftOffset < (tempNsgSaab.nslots + tempNsgSaab.laenge) ? (tempNsgSaab.nslots + tempNsgSaab.laenge) : saabShiftOffset;
|
|
343
|
+
}
|
|
344
|
+
// Extrahiere Punkte
|
|
345
|
+
const points = [];
|
|
346
|
+
points.push(pointTopLeft, pointBottomRight);
|
|
347
|
+
// Variablen für das eventuelle Shiften basierend auf SA-Ausrichtung
|
|
348
|
+
for (const p of points) {
|
|
349
|
+
util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(p, -90 * nsgSa.ausrichtung);
|
|
350
|
+
p.xPosition += nsgSo.xrel + nsgSa.xrel + (nsgSa.ausrichtung === 2 ? saabShiftOffset * constants_1.NsgConstants.HORIZONTAL_OFFSET : 0);
|
|
351
|
+
p.yPosition += nsgSo.yrel + nsgSa.yrel + (nsgSa.ausrichtung === 3 ? saabShiftOffset * constants_1.NsgConstants.HORIZONTAL_OFFSET : 0);
|
|
352
|
+
}
|
|
353
|
+
// Erstelle CIM-Objekte
|
|
354
|
+
const cimObjectUUID = this.inputArgs.integralID2UUID.get(i7Data.idSSAB);
|
|
355
|
+
const diagramObject = new DiagramObject_1.DiagramObject((0, utils_1.generateUUID)(), 'SSAB Diagram');
|
|
356
|
+
diagramObject.diagramUUID = this.activeDiagram.getUUID();
|
|
357
|
+
diagramObject.identifiedObjectUUID = cimObjectUUID;
|
|
358
|
+
diagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSa.ausrichtung);
|
|
359
|
+
(0, utils_schema_1.copyDiagramObjectPoints)(diagramObject, points);
|
|
360
|
+
DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
361
|
+
identifiedObjectUUID: cimObjectUUID,
|
|
362
|
+
diagramObjectUUID: diagramObject.getUUID()
|
|
363
|
+
});
|
|
364
|
+
DLConverterI7.addCimObjects(diagramObject);
|
|
365
|
+
const nsgSAABObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.id, variantenNr });
|
|
366
|
+
const nsgSAAB = DLConverterI7.getDbNsgObjectByID(nsgSAABObjKey);
|
|
367
|
+
if (nsgSAAB.nsgSsabs === undefined) {
|
|
368
|
+
nsgSAAB.nsgSsabs = [];
|
|
369
|
+
}
|
|
370
|
+
nsgSAAB.nsgSsabs.push(i7Data);
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
async convertSchemaSchaltfeldElemente(variantenNr, onlyEingeblendet, schaltfeldIDs) {
|
|
374
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) && schaltfeldIDs.length > 0) {
|
|
375
|
+
/* Pruefe anhand der Tabellennamen, ob die relevanten Tabellen verfuegbar sind */
|
|
376
|
+
const i7relevantTables = [
|
|
377
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LEISTUNGSSCHALTER],
|
|
378
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRENNER_3P],
|
|
379
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRENNERFI_3P],
|
|
380
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_STARR]
|
|
381
|
+
];
|
|
382
|
+
const i7checkedTables = this.filterTablesByAvailability(i7relevantTables);
|
|
383
|
+
const i7knotenBeziehungen = await this.mysqlController.execQuery((0, integral_sql_1.getI7KnotenBeziehungenQuery)(i7checkedTables, schaltfeldIDs));
|
|
384
|
+
const queryStr = (0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_SCHALTFELD, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_SCHALTFELD), schaltfeldIDs);
|
|
385
|
+
const resultsNsgSchaltfeld = await this.mysqlController.execQuery(queryStr);
|
|
386
|
+
const filteredResultsNsgSchaltfeld = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultsNsgSchaltfeld, variantenNr, onlyEingeblendet);
|
|
387
|
+
for (const i7Data of filteredResultsNsgSchaltfeld) {
|
|
388
|
+
DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, integral_sql_1.Integral7TableNames.NSG_SCHALTFELD);
|
|
389
|
+
// Es kann vorkommen, dass der Standort einer Sammelschiene bzw. einer Schaltanlage nicht eingeblendet ist.
|
|
390
|
+
// Dadurch wird die Sammelschiene bzw. die Schaltanlage nicht exportiert und deshalb existiert das Referenz-Objekt nsgSSAB nicht
|
|
391
|
+
// Das Schaltfeld kann somit ebenfalls nicht exportiert werden und wird übersprungen
|
|
392
|
+
const nsgSaabObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.nsgsaa, variantenNr });
|
|
393
|
+
const nsgSAAB = DLConverterI7.getDbNsgObjectByID(nsgSaabObjKey);
|
|
394
|
+
if (nsgSAAB === undefined)
|
|
395
|
+
continue;
|
|
396
|
+
const nsgSchaltanlageObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: nsgSAAB.nsgsa, variantenNr });
|
|
397
|
+
const nsgSchaltanlage = DLConverterI7.getDbNsgObjectByID(nsgSchaltanlageObjKey);
|
|
398
|
+
if (nsgSchaltanlage === undefined)
|
|
399
|
+
continue;
|
|
400
|
+
const nsgStandortObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: nsgSchaltanlage.nsgso, variantenNr });
|
|
401
|
+
const nsgStandort = DLConverterI7.getDbNsgObjectByID(nsgStandortObjKey);
|
|
402
|
+
if (nsgStandort === undefined)
|
|
403
|
+
continue;
|
|
404
|
+
// Sammlung der Knoten anhand der i7IDs mit deren Punkten
|
|
405
|
+
const nodePointMap = new Map();
|
|
406
|
+
const schaltfeldLeftOffset = i7Data.slotnummer * constants_1.NsgConstants.HORIZONTAL_OFFSET;
|
|
407
|
+
/*
|
|
408
|
+
Deltaausrichtung steht in Beziehung zur Schaltanlagen-Ausrichtung gemäß:
|
|
409
|
+
-> Schaltanlagen-Ausrichtung = 0 => Schaltanlage ist horizontal nach rechts platziert
|
|
410
|
+
=> Deltaausrichtung = 0 => Schaltfeld ist nach oben ausgerichtet
|
|
411
|
+
=> Deltaausrichtung = 1 => Schaltfeld ist nach unten ausgerichten
|
|
412
|
+
|
|
413
|
+
Schaltfelder werden mit der Schaltanlagen-Ausrichtungen gedreht
|
|
414
|
+
*/
|
|
415
|
+
const schaltfeldDeltaausrichtung = i7Data.deltaausrichtung;
|
|
416
|
+
// Extrahiere nur die relevanten Knoten, die sich in dem aktuellen Schaltfeld befinden
|
|
417
|
+
const schaltfeldI7KnotenBeziehungen = i7knotenBeziehungen.filter(elem => elem.seliste === i7Data.schaltfeld);
|
|
418
|
+
let shiftFromBusbar = false;
|
|
419
|
+
if (schaltfeldI7KnotenBeziehungen.length == 1) {
|
|
420
|
+
shiftFromBusbar = true;
|
|
421
|
+
}
|
|
422
|
+
const ssabs = this.inputArgs.integralSchaltfelder.get(i7Data.schaltfeld).saabschnitt.ssab;
|
|
423
|
+
const maxSSabPos = Math.max(...ssabs.map(ssab => ssab.pos));
|
|
424
|
+
const onSSabNodes = schaltfeldI7KnotenBeziehungen.filter(elem => ssabs.find(ssab => ssab.id === elem.aknoten) !== undefined);
|
|
425
|
+
const xPos = schaltfeldLeftOffset + (constants_1.NsgConstants.HORIZONTAL_OFFSET / 2);
|
|
426
|
+
let lastNode = undefined;
|
|
427
|
+
for (const node of onSSabNodes) {
|
|
428
|
+
const nsgSSABObjKey = DLConverterI7.createSchemaKeyObject({
|
|
429
|
+
i7ID: node.aknoten,
|
|
430
|
+
variantenNr,
|
|
431
|
+
additionalIDs: [nsgSAAB.nsgsa]
|
|
432
|
+
});
|
|
433
|
+
const nsgSsab = DLConverterI7.getDbNsgObjectByID(nsgSSABObjKey);
|
|
434
|
+
const ssabYPos = nsgSsab.posSSAB * constants_1.NsgConstants.VERTICAL_OFFSET;
|
|
435
|
+
// Starte yStackPos bei 1 und ssabOffset daher bei 0, wenn schaltfeldDeltaausrichtung = 0
|
|
436
|
+
let yStackPos = 1;
|
|
437
|
+
let prevNode = null;
|
|
438
|
+
let crtNode = node;
|
|
439
|
+
while (crtNode) {
|
|
440
|
+
if (nodePointMap.get(crtNode.id) === undefined) {
|
|
441
|
+
// Initiale Werte sind: x => Schaltfeld Position; y => Sammelschienen Position
|
|
442
|
+
// let xPos = schaltfeldLeftOffset + (NsgConstants.HORIZONTAL_OFFSET / 2);
|
|
443
|
+
let yPos = ssabYPos;
|
|
444
|
+
// Falls der Knoten ein initialer Knoten ist, hängt er mit einer Sammelschiene zusammen und muss anders platziert werden
|
|
445
|
+
if (crtNode === node) {
|
|
446
|
+
yPos += shiftFromBusbar ? (schaltfeldDeltaausrichtung === 0 ? -1 : 1) * constants_1.NsgConstants.VERTICAL_OFFSET : 0;
|
|
447
|
+
}
|
|
448
|
+
else {
|
|
449
|
+
const ssabOffset = schaltfeldDeltaausrichtung === 0 ? 0 : maxSSabPos;
|
|
450
|
+
yPos = ((schaltfeldDeltaausrichtung === 0 ? -1 : 1) * (yStackPos) + ssabOffset) * constants_1.NsgConstants.VERTICAL_OFFSET;
|
|
451
|
+
yStackPos += 1;
|
|
452
|
+
}
|
|
453
|
+
nodePointMap.set(crtNode.id, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(xPos, yPos, schaltfeldDeltaausrichtung * 180));
|
|
454
|
+
// BEGIN: ConnectivityNode-Support
|
|
455
|
+
// Platziere die ConnectivityNodes (abgesehen von denjenigen, die auf eine Sammelschiene verweisen)
|
|
456
|
+
const aKnotenUUID = this.inputArgs.integralID2UUID.get(crtNode.aknoten);
|
|
457
|
+
if (!DLConverterI7.cimUUID2Object.has(aKnotenUUID) && !nodePointMap.has(crtNode.aknoten)) {
|
|
458
|
+
let prevNodeY = (prevNode !== null && nodePointMap.get(prevNode.id) !== undefined) ? nodePointMap.get(prevNode.id).diagramObjectPoints[0].yPosition : 0;
|
|
459
|
+
let yPosAKnoten;
|
|
460
|
+
if (prevNode === node) {
|
|
461
|
+
yPosAKnoten = yPos - ((schaltfeldDeltaausrichtung === 0 ? -1 : 1) * constants_1.NsgConstants.VERTICAL_OFFSET) / 2;
|
|
462
|
+
}
|
|
463
|
+
else {
|
|
464
|
+
yPosAKnoten = (yPos - prevNodeY) / 2 + prevNodeY;
|
|
465
|
+
}
|
|
466
|
+
nodePointMap.set(crtNode.aknoten, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(xPos, yPosAKnoten));
|
|
467
|
+
}
|
|
468
|
+
// END: ConnectivityNode-Support
|
|
469
|
+
}
|
|
470
|
+
lastNode = crtNode;
|
|
471
|
+
prevNode = crtNode;
|
|
472
|
+
crtNode = schaltfeldI7KnotenBeziehungen.find(elem => elem.aknoten === crtNode.eknoten);
|
|
473
|
+
}
|
|
474
|
+
}
|
|
475
|
+
// BEGIN: ConnectivityNode-Support
|
|
476
|
+
// Exportiere das ConnectivityNode/den Endpunkt des Schaltfeldes
|
|
477
|
+
const lastEKnotenUUID = this.inputArgs.integralID2UUID.get(lastNode.eknoten);
|
|
478
|
+
if (!DLConverterI7.cimUUID2Object.has(lastEKnotenUUID) && !nodePointMap.has(lastNode.eknoten)) {
|
|
479
|
+
const yPos = (schaltfeldDeltaausrichtung === 0 ? -1 : 1) * (i7Data.hoehe);
|
|
480
|
+
const heightAdjustement = schaltfeldDeltaausrichtung === 0 ? (constants_1.NsgConstants.VERTICAL_OFFSET * (maxSSabPos + 1)) : 0;
|
|
481
|
+
nodePointMap.set(lastNode.eknoten, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(xPos, yPos + heightAdjustement));
|
|
482
|
+
}
|
|
483
|
+
i7Data.lastNodeID = lastNode.eknoten;
|
|
484
|
+
i7Data.lastNodeCimUUID = lastEKnotenUUID;
|
|
485
|
+
i7Data.orientation = nsgSchaltanlage.ausrichtung;
|
|
486
|
+
if (i7Data.deltaausrichtung === 1) {
|
|
487
|
+
i7Data.orientation = (i7Data.orientation + 2) % 4;
|
|
488
|
+
}
|
|
489
|
+
// END: ConnectivityNode-Support
|
|
490
|
+
// BEGIN: Terminal-Support
|
|
491
|
+
// for (const node of onSSabNodes) {
|
|
492
|
+
// let crtNode = node;
|
|
493
|
+
// while (crtNode) {
|
|
494
|
+
// let aKnotenPos: DiagramObjectPoint = undefined;
|
|
495
|
+
// if (crtNode === node) {
|
|
496
|
+
// const nsgSSABObjKey = DLConverterI7.createSchemaKeyObject(node.aknoten, variantenNr, nsgSaab.nsgsa);
|
|
497
|
+
// const nsgSsab: NsgSSAB = DLConverterI7.requestDbNsgObjectByID(nsgSSABObjKey);
|
|
498
|
+
// aKnotenPos = new DiagramObjectPoint(xPos, nsgSsab.posSSAB * NsgConstants.VERTICAL_OFFSET);
|
|
499
|
+
// }
|
|
500
|
+
// DLUtilFunctions.exportTerminals(crtNode, nodePointMap, uuidPointsMap, cimModel, this.integralID2UUID, aKnotenPos);
|
|
501
|
+
//
|
|
502
|
+
// crtNode = schaltfeldI7KnotenBeziehungen.find(elem => elem.aknoten === crtNode.eknoten);
|
|
503
|
+
// }
|
|
504
|
+
// }
|
|
505
|
+
// END: Terminal-Support
|
|
506
|
+
// 0 1 2 3 (clockwise rotation)
|
|
507
|
+
for (const nodePointEntry of nodePointMap.entries()) {
|
|
508
|
+
const i7ID = nodePointEntry[0];
|
|
509
|
+
const diagramObject = nodePointEntry[1];
|
|
510
|
+
if (DLConverterI7.cimUUID2Object.has(diagramObject.getUUID()))
|
|
511
|
+
continue;
|
|
512
|
+
const cimObjectUUID = this.inputArgs.integralID2UUID.get(i7ID);
|
|
513
|
+
diagramObject.identifiedObjectUUID = cimObjectUUID;
|
|
514
|
+
diagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSaNsgSf(nsgSchaltanlage.ausrichtung, schaltfeldDeltaausrichtung);
|
|
515
|
+
diagramObject.diagramUUID = this.activeDiagram.getUUID();
|
|
516
|
+
const schemaObjKey = DLConverterI7.createSchemaKeyObject({ i7ID, variantenNr, additionalIDs: [i7Data.id] });
|
|
517
|
+
DLConverterI7.addID2TypeMapping(schemaObjKey, data_types_1.DataTypes.NSG_NODE);
|
|
518
|
+
DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
519
|
+
identifiedObjectUUID: cimObjectUUID,
|
|
520
|
+
diagramObjectUUID: diagramObject.getUUID()
|
|
521
|
+
});
|
|
522
|
+
DLConverterI7.addCimObjects(diagramObject);
|
|
523
|
+
}
|
|
524
|
+
util_functions_1.DLUtilFunctions.rotateAndShiftBasedOnNsgSAA(nsgStandort, nsgSchaltanlage, nsgSAAB, [...nodePointMap.values()], true);
|
|
525
|
+
}
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
async convertSchemaQuerkupplungen(variantenNr, onlyEingeblendet, querkupplungIDs) {
|
|
529
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_QUERKUPPLUNG) && querkupplungIDs.length > 0) {
|
|
530
|
+
const i7relevantTables = [
|
|
531
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LEISTUNGSSCHALTER],
|
|
532
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRENNER_3P],
|
|
533
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRENNERFI_3P],
|
|
534
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_STARR]
|
|
535
|
+
];
|
|
536
|
+
const i7checkedTables = this.filterTablesByAvailability(i7relevantTables);
|
|
537
|
+
const i7knotenBeziehungen = await this.mysqlController.execQuery((0, integral_sql_1.getI7KnotenBeziehungenQuery)(i7checkedTables, querkupplungIDs));
|
|
538
|
+
const resultsNsgKpFeld = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_QUERKUPPLUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_QUERKUPPLUNG), querkupplungIDs));
|
|
539
|
+
const filteredResultsNsgKpFeld = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultsNsgKpFeld, variantenNr, onlyEingeblendet);
|
|
540
|
+
for (const i7Data of filteredResultsNsgKpFeld) {
|
|
541
|
+
DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, integral_sql_1.Integral7TableNames.NSG_QUERKUPPLUNG);
|
|
542
|
+
const kpFeldLeftOffset = i7Data.slotnummer * constants_1.NsgConstants.HORIZONTAL_OFFSET;
|
|
543
|
+
const kpFeldDeltaausrichtung = i7Data.deltaausrichtung;
|
|
544
|
+
// Extrahiere nur die relevanten Knoten, die sich in der aktuellen Querkupplung befinden
|
|
545
|
+
const kpFeldI7KnotenBeziehungen = i7knotenBeziehungen.filter(elem => elem.seliste === i7Data.kpfeld);
|
|
546
|
+
const nsgSAABObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.nsgsaa, variantenNr });
|
|
547
|
+
const nsgSAAB = DLConverterI7.getDbNsgObjectByID(nsgSAABObjKey);
|
|
548
|
+
if (nsgSAAB === undefined)
|
|
549
|
+
continue;
|
|
550
|
+
const nsgSchaltanlageObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: nsgSAAB.nsgsa, variantenNr });
|
|
551
|
+
const nsgSchaltanlage = DLConverterI7.getDbNsgObjectByID(nsgSchaltanlageObjKey);
|
|
552
|
+
if (nsgSchaltanlage === undefined)
|
|
553
|
+
continue;
|
|
554
|
+
const nsgStandortObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: nsgSchaltanlage.nsgso, variantenNr });
|
|
555
|
+
const nsgStandort = DLConverterI7.getDbNsgObjectByID(nsgStandortObjKey);
|
|
556
|
+
if (nsgStandort === undefined)
|
|
557
|
+
continue;
|
|
558
|
+
// Ermittle die relevanten SSabIDs
|
|
559
|
+
const relevantSSabIDs = new Set();
|
|
560
|
+
nsgSAAB.nsgSsabs.forEach(arg => relevantSSabIDs.add(arg.idSSAB));
|
|
561
|
+
const ssabKeyIDs = DLConverterI7.type2i7IDs.get(data_types_1.DataTypes.NSG_SSAB);
|
|
562
|
+
const nsgSSABs = new Map();
|
|
563
|
+
for (const ssabKeyID of ssabKeyIDs) {
|
|
564
|
+
const nsgSSAB = DLConverterI7.i7ID2DbNsgObject.get(ssabKeyID);
|
|
565
|
+
nsgSSABs.set(nsgSSAB.idSSAB, nsgSSAB);
|
|
566
|
+
}
|
|
567
|
+
const placedCIMObjectUUIDs = new Set(DLConverterI7.cimUUID2Object.keys());
|
|
568
|
+
const nodePointMap = util_functions_1.DLUtilFunctions.placeKupplung(kpFeldI7KnotenBeziehungen, relevantSSabIDs, nsgSSABs, this.inputArgs.integralID2UUID, placedCIMObjectUUIDs, kpFeldDeltaausrichtung, kpFeldLeftOffset, false, this.inputArgs.objects);
|
|
569
|
+
for (const nodePointEntry of nodePointMap.entries()) {
|
|
570
|
+
const key = nodePointEntry[0];
|
|
571
|
+
const value = nodePointEntry[1];
|
|
572
|
+
if (DLConverterI7.cimUUID2Object.has(value.getUUID()))
|
|
573
|
+
continue;
|
|
574
|
+
const cimObjectUUID = this.inputArgs.integralID2UUID.get(key);
|
|
575
|
+
value.identifiedObjectUUID = cimObjectUUID;
|
|
576
|
+
value.rotation += (util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSchaltanlage.ausrichtung) - 90 + 720);
|
|
577
|
+
value.rotation = value.rotation % 360;
|
|
578
|
+
value.diagramUUID = this.activeDiagram.getUUID();
|
|
579
|
+
const schemaObjKey = DLConverterI7.createSchemaKeyObject({
|
|
580
|
+
i7ID: key,
|
|
581
|
+
variantenNr,
|
|
582
|
+
additionalIDs: [i7Data.id]
|
|
583
|
+
});
|
|
584
|
+
DLConverterI7.addID2TypeMapping(schemaObjKey, data_types_1.DataTypes.NSG_NODE);
|
|
585
|
+
DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
586
|
+
identifiedObjectUUID: cimObjectUUID,
|
|
587
|
+
diagramObjectUUID: value.getUUID()
|
|
588
|
+
});
|
|
589
|
+
DLConverterI7.addCimObjects(value);
|
|
590
|
+
}
|
|
591
|
+
util_functions_1.DLUtilFunctions.rotateAndShiftBasedOnNsgSAA(nsgStandort, nsgSchaltanlage, nsgSAAB, [...nodePointMap.values()], true);
|
|
592
|
+
}
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
async convertSchemaLaengskupplungen(variantenNr, onlyEingeblendet, laengskupplungIDs) {
|
|
596
|
+
// const ssabKeyIDs = DLConverterI7.type2i7IDs.get(DataTypes.NSG_SSAB);
|
|
597
|
+
// if (ssabKeyIDs === undefined) {
|
|
598
|
+
// return;
|
|
599
|
+
// }
|
|
600
|
+
//
|
|
601
|
+
// const nsgSSABIDs = new Set<number>();
|
|
602
|
+
// for (const ssabKeyID of ssabKeyIDs) {
|
|
603
|
+
// const nsgSSAB = DLConverterI7.i7ID2DbNsgObject.get(ssabKeyID) as NsgSSAB;
|
|
604
|
+
// nsgSSABIDs.add(nsgSSAB.idSSAB);
|
|
605
|
+
// }
|
|
606
|
+
const saabKeyIDs = DLConverterI7.type2i7IDs.get(integral_sql_1.Integral7TableNames.NSG_SCHALTANLAGENABSCHNITT);
|
|
607
|
+
if (saabKeyIDs === undefined) {
|
|
608
|
+
return;
|
|
609
|
+
}
|
|
610
|
+
const nsgSAABIDs = new Set();
|
|
611
|
+
for (const saabKeyID of saabKeyIDs) {
|
|
612
|
+
const nsgSAAB = DLConverterI7.i7ID2DbNsgObject.get(saabKeyID);
|
|
613
|
+
nsgSAABIDs.add(nsgSAAB.id);
|
|
614
|
+
}
|
|
615
|
+
// Die Längskupplungen werden primär mittels der Netz-Tabelle (netz_lkupplung) exportiert und nicht über die NSG-Tabelle (nsg_nsglkupplung)
|
|
616
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG) && laengskupplungIDs.length > 0 && saabKeyIDs.length > 0) {
|
|
617
|
+
const i7relevantTables = [
|
|
618
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LEISTUNGSSCHALTER],
|
|
619
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRENNER_3P],
|
|
620
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRENNERFI_3P],
|
|
621
|
+
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_STARR]
|
|
622
|
+
];
|
|
623
|
+
const i7checkedTables = this.filterTablesByAvailability(i7relevantTables);
|
|
624
|
+
const i7knotenBeziehungen = await this.mysqlController.execQuery((0, integral_sql_1.getI7KnotenBeziehungenQuery)(i7checkedTables, laengskupplungIDs));
|
|
625
|
+
const resultsNsgLKupplung = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_LAENGSKUPPLUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG), [...nsgSAABIDs.values()]));
|
|
626
|
+
const filteredResultsNsgLKupplung = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultsNsgLKupplung, variantenNr, onlyEingeblendet);
|
|
627
|
+
for (const i7Data of filteredResultsNsgLKupplung) {
|
|
628
|
+
DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG);
|
|
629
|
+
const nsgSAABObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.nsgsaa, variantenNr });
|
|
630
|
+
const nsgSAAB = DLConverterI7.getDbNsgObjectByID(nsgSAABObjKey);
|
|
631
|
+
if (nsgSAAB === undefined)
|
|
632
|
+
continue;
|
|
633
|
+
const nsgSchaltanlageObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: nsgSAAB.nsgsa, variantenNr });
|
|
634
|
+
const nsgSchaltanlage = DLConverterI7.getDbNsgObjectByID(nsgSchaltanlageObjKey);
|
|
635
|
+
if (nsgSchaltanlage === undefined)
|
|
636
|
+
continue;
|
|
637
|
+
const nsgStandortObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: nsgSchaltanlage.nsgso, variantenNr });
|
|
638
|
+
const nsgStandort = DLConverterI7.getDbNsgObjectByID(nsgStandortObjKey);
|
|
639
|
+
if (nsgStandort === undefined)
|
|
640
|
+
continue;
|
|
641
|
+
// Sammlung der Knoten, um die CIM-UUID auf die zugehörigen Punkte zu referenzieren
|
|
642
|
+
// const uuidPointsMap: Map<string, DiagramObject> = new Map();
|
|
643
|
+
const nodePointMap = new Map();
|
|
644
|
+
// Einer NSG-Längskupplung können mehrere Netz-Längskupplungen zugeordnet sein
|
|
645
|
+
const netzLaengskupplungsObjs = [...this.inputArgs.integralLaengskupplungen.values()].filter(elem => elem.schaltanlagenID === nsgSchaltanlage.schaltanlage);
|
|
646
|
+
for (const netzLaengskupplungObj of netzLaengskupplungsObjs) {
|
|
647
|
+
const lKupplungI7KnotenBeziehungen = i7knotenBeziehungen.filter(elem => elem.seliste === netzLaengskupplungObj.id);
|
|
648
|
+
const relevantSsabIDs = new Set();
|
|
649
|
+
const nsgSSABs = new Map();
|
|
650
|
+
nsgSchaltanlage.nsgSaabs.forEach(iNsgSAAB => iNsgSAAB.nsgSsabs.forEach(iNsgSsab => {
|
|
651
|
+
relevantSsabIDs.add(iNsgSsab.idSSAB);
|
|
652
|
+
nsgSSABs.set(iNsgSsab.idSSAB, iNsgSsab);
|
|
653
|
+
}));
|
|
654
|
+
// nsgSAAB.nsgSsabs.forEach(arg => relevantSSabIDs.add(arg.idSSAB));
|
|
655
|
+
// const ssabKeyIDs = DLConverterI7.type2i7IDs.get(DataTypes.NSG_SSAB);
|
|
656
|
+
// const nsgSSABs = new Map<number, NsgSSAB>();
|
|
657
|
+
// for (const ssabKeyID of ssabKeyIDs) {
|
|
658
|
+
// const nsgSSAB = DLConverterI7.i7ID2DbNsgObject.get(ssabKeyID) as NsgSSAB;
|
|
659
|
+
// nsgSSABs.set(nsgSSAB.idSSAB, nsgSSAB);
|
|
660
|
+
// }
|
|
661
|
+
const placedCIMObjectUUIDs = new Set(DLConverterI7.cimUUID2Object.keys());
|
|
662
|
+
const tempNodePointMap = util_functions_1.DLUtilFunctions.placeKupplung(lKupplungI7KnotenBeziehungen, relevantSsabIDs, nsgSSABs, this.inputArgs.integralID2UUID, placedCIMObjectUUIDs, 0, 0, true, this.inputArgs.objects);
|
|
663
|
+
tempNodePointMap.forEach((value, key) => nodePointMap.set(key, value));
|
|
664
|
+
}
|
|
665
|
+
for (const nodePointEntry of nodePointMap.entries()) {
|
|
666
|
+
const key = nodePointEntry[0];
|
|
667
|
+
const value = nodePointEntry[1];
|
|
668
|
+
if (DLConverterI7.cimUUID2Object.has(value.getUUID()))
|
|
669
|
+
continue;
|
|
670
|
+
const cimObjectUUID = this.inputArgs.integralID2UUID.get(key);
|
|
671
|
+
value.identifiedObjectUUID = cimObjectUUID;
|
|
672
|
+
if (value.rotation === undefined) {
|
|
673
|
+
value.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSchaltanlage.ausrichtung);
|
|
674
|
+
}
|
|
675
|
+
else {
|
|
676
|
+
value.rotation += util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSchaltanlage.ausrichtung);
|
|
677
|
+
}
|
|
678
|
+
value.diagramUUID = this.activeDiagram.getUUID();
|
|
679
|
+
const schemaObjKey = DLConverterI7.createSchemaKeyObject({
|
|
680
|
+
i7ID: key,
|
|
681
|
+
variantenNr,
|
|
682
|
+
additionalIDs: [i7Data.id]
|
|
683
|
+
});
|
|
684
|
+
DLConverterI7.addID2TypeMapping(schemaObjKey, data_types_1.DataTypes.NSG_NODE);
|
|
685
|
+
DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
686
|
+
identifiedObjectUUID: cimObjectUUID,
|
|
687
|
+
diagramObjectUUID: value.getUUID()
|
|
688
|
+
});
|
|
689
|
+
DLConverterI7.addCimObjects(value);
|
|
690
|
+
}
|
|
691
|
+
util_functions_1.DLUtilFunctions.rotateAndShiftBasedOnNsgSAA(nsgStandort, nsgSchaltanlage, nsgSAAB, [...nodePointMap.values()]);
|
|
692
|
+
//
|
|
693
|
+
// uuidPointsMap.forEach((entryDiagramObject, key) => {
|
|
694
|
+
// if (entryDiagramObject.rotation === undefined) {
|
|
695
|
+
// entryDiagramObject.rotation = DLUtilFunctions.getRotationBasedOnNsgSa(nsgSchaltanlage.ausrichtung);
|
|
696
|
+
// } else {
|
|
697
|
+
// entryDiagramObject.rotation += DLUtilFunctions.getRotationBasedOnNsgSa(nsgSchaltanlage.ausrichtung);
|
|
698
|
+
// }
|
|
699
|
+
// });
|
|
700
|
+
//
|
|
701
|
+
// DLUtilFunctions.rotateShiftAddBasedOnNsgSAA(cimModel, integral7, variantenNr, i7Data.nsgsaa, uuidPointsMap);
|
|
702
|
+
/*
|
|
703
|
+
// for testing
|
|
704
|
+
for (const entry of uuidPointsMap.entries()) {
|
|
705
|
+
const i7IDs = this.UUID2Integral7ID.get(entry[0]);
|
|
706
|
+
if (i7IDs && i7IDs.filter(value => {
|
|
707
|
+
return value === 1235 || value === 1236 || value === 1239
|
|
708
|
+
}).length > 0) {
|
|
709
|
+
console.log(i7IDs)
|
|
710
|
+
}
|
|
711
|
+
}
|
|
712
|
+
*/
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
}
|
|
716
|
+
async convertSchemaTransformatoren2W(variantenNr, onlyEingeblendet, powerTransformers) {
|
|
717
|
+
const nsgStandortKeyIDs = DLConverterI7.type2i7IDs.get(data_types_1.DataTypes.NSG_STANDORT);
|
|
718
|
+
if (nsgStandortKeyIDs === undefined) {
|
|
719
|
+
return;
|
|
720
|
+
}
|
|
721
|
+
const nsgStandortIDs = new Set();
|
|
722
|
+
for (const nsgStandortKeyID of nsgStandortKeyIDs) {
|
|
723
|
+
const nsgStandort = DLConverterI7.i7ID2DbNsgObject.get(nsgStandortKeyID);
|
|
724
|
+
nsgStandortIDs.add(nsgStandort.id);
|
|
725
|
+
}
|
|
726
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_TRAFO2W) && nsgStandortIDs.size > 0) {
|
|
727
|
+
// Da TrafoIDs nicht im Integral7Model hinterlegt werden, Trafos auf Basis der NsgSO-IDs ermitteln (äuqivalent zu Netz-Trafo2W)
|
|
728
|
+
const results = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_TRAFO2W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_TRAFO2W), [...nsgStandortIDs.values()]));
|
|
729
|
+
const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
|
|
730
|
+
for (const i7Data of filteredResults) {
|
|
731
|
+
const schemaObjKey = DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, data_types_1.DataTypes.NSG_TRAFO2W);
|
|
732
|
+
const nsgStandortObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.nsgso, variantenNr });
|
|
733
|
+
const nsgSo = DLConverterI7.getDbNsgObjectByID(nsgStandortObjKey);
|
|
734
|
+
if (nsgSo === undefined)
|
|
735
|
+
continue;
|
|
736
|
+
// es wird davon ausgegangen, dass das Terminal 1 = anschlussanf zugeordnet ist
|
|
737
|
+
// und Terminal 2 = anschlussend zugeordnet ist
|
|
738
|
+
const powerTransformerUUID = this.inputArgs.integralID2UUID.get(i7Data.trafo2w);
|
|
739
|
+
const powerTransformer = powerTransformers.get(powerTransformerUUID);
|
|
740
|
+
if (powerTransformer === undefined)
|
|
741
|
+
continue;
|
|
742
|
+
const terminal1 = powerTransformer.powerTransformerEnd[0]?.terminal;
|
|
743
|
+
const terminal2 = powerTransformer.powerTransformerEnd[1]?.terminal;
|
|
744
|
+
const powerTransformerDiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
745
|
+
xPosition: constants_1.NsgConstants.TRAFO2W_WIDTH / 2,
|
|
746
|
+
yPosition: constants_1.NsgConstants.TRAFO2W_HEIGHT / 2,
|
|
747
|
+
rotation: util_functions_1.DLUtilFunctions.getRotationBasedOnTrafo2W(i7Data.ausrichtung),
|
|
748
|
+
diagramObjectName: 'DiagramObject',
|
|
749
|
+
identifiedObjectUUID: powerTransformerUUID,
|
|
750
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
751
|
+
});
|
|
752
|
+
const createdDiagramObjects = [];
|
|
753
|
+
createdDiagramObjects.push(powerTransformerDiagramObject);
|
|
754
|
+
let terminal1DiagramObject;
|
|
755
|
+
if (terminal1 !== undefined) {
|
|
756
|
+
terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
757
|
+
xPosition: 0,
|
|
758
|
+
yPosition: constants_1.NsgConstants.TRAFO2W_HEIGHT / 2,
|
|
759
|
+
diagramObjectName: 'DiagramObject',
|
|
760
|
+
identifiedObjectUUID: terminal1.getUUID(),
|
|
761
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
762
|
+
});
|
|
763
|
+
createdDiagramObjects.push(terminal1DiagramObject);
|
|
764
|
+
}
|
|
765
|
+
let terminal2DiagramObject;
|
|
766
|
+
if (terminal2 !== undefined) {
|
|
767
|
+
terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
768
|
+
xPosition: constants_1.NsgConstants.TRAFO2W_WIDTH,
|
|
769
|
+
yPosition: constants_1.NsgConstants.TRAFO2W_HEIGHT / 2,
|
|
770
|
+
diagramObjectName: 'DiagramObject',
|
|
771
|
+
identifiedObjectUUID: terminal2.getUUID(),
|
|
772
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
773
|
+
});
|
|
774
|
+
createdDiagramObjects.push(terminal2DiagramObject);
|
|
775
|
+
}
|
|
776
|
+
for (const diagramObject of createdDiagramObjects) {
|
|
777
|
+
for (const diagramObjectPoint of diagramObject.diagramObjectPoints) {
|
|
778
|
+
util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(diagramObjectPoint, 90 * i7Data.ausrichtung);
|
|
779
|
+
// cause of i7 uses the top-left corner as the default (0,0), the points need to be adjusted after the
|
|
780
|
+
// rotation (if negative coordinates occur, they can be flipped into the positive side)
|
|
781
|
+
diagramObjectPoint.xPosition = Math.abs(diagramObjectPoint.xPosition);
|
|
782
|
+
diagramObjectPoint.yPosition = Math.abs(diagramObjectPoint.yPosition);
|
|
783
|
+
diagramObjectPoint.xPosition += i7Data.xrel;
|
|
784
|
+
diagramObjectPoint.yPosition += i7Data.yrel;
|
|
785
|
+
diagramObjectPoint.xPosition += nsgSo.xrel;
|
|
786
|
+
diagramObjectPoint.yPosition += nsgSo.yrel;
|
|
787
|
+
}
|
|
788
|
+
}
|
|
789
|
+
// add the second DiagramObjectPoints to the DiagramObjects of the terminals (this will then result in the
|
|
790
|
+
// connection between the PowerTransformerEnd and the ConnectivityNode)
|
|
791
|
+
if (terminal1 !== undefined) {
|
|
792
|
+
const connectivityNodeDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(terminal1.getConnectivityNodeUUID());
|
|
793
|
+
if (connectivityNodeDiagramObject !== undefined) {
|
|
794
|
+
util_functions_1.DLUtilFunctions.copyAndPushDiagramObjectPoint(terminal1DiagramObject, connectivityNodeDiagramObject.diagramObjectPoints[0]);
|
|
795
|
+
}
|
|
796
|
+
}
|
|
797
|
+
if (terminal2 !== undefined) {
|
|
798
|
+
const connectivityNodeDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(terminal2.getConnectivityNodeUUID());
|
|
799
|
+
if (connectivityNodeDiagramObject !== undefined) {
|
|
800
|
+
util_functions_1.DLUtilFunctions.copyAndPushDiagramObjectPoint(terminal2DiagramObject, connectivityNodeDiagramObject.diagramObjectPoints[0]);
|
|
801
|
+
}
|
|
802
|
+
}
|
|
803
|
+
DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
804
|
+
identifiedObjectUUID: powerTransformerUUID,
|
|
805
|
+
diagramObjectUUID: powerTransformerDiagramObject.getUUID()
|
|
806
|
+
});
|
|
807
|
+
DLConverterI7.addCimObjects(powerTransformerDiagramObject);
|
|
808
|
+
}
|
|
809
|
+
}
|
|
810
|
+
else {
|
|
811
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_TRAFO2W} ist nicht vorhanden.`);
|
|
812
|
+
}
|
|
813
|
+
}
|
|
814
|
+
async convertSchemaTransformatoren3W(variantenNr, onlyEingeblendet, powerTransformers) {
|
|
815
|
+
const nsgStandortKeyIDs = DLConverterI7.type2i7IDs.get(data_types_1.DataTypes.NSG_STANDORT);
|
|
816
|
+
if (nsgStandortKeyIDs === undefined) {
|
|
817
|
+
return;
|
|
818
|
+
}
|
|
819
|
+
const nsgStandortIDs = new Set();
|
|
820
|
+
const netzStandortIDs = new Set();
|
|
821
|
+
for (const nsgStandortKeyID of nsgStandortKeyIDs) {
|
|
822
|
+
const nsgStandort = DLConverterI7.i7ID2DbNsgObject.get(nsgStandortKeyID);
|
|
823
|
+
nsgStandortIDs.add(nsgStandort.id);
|
|
824
|
+
netzStandortIDs.add(nsgStandort.standort);
|
|
825
|
+
}
|
|
826
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_TRAFO3W) && nsgStandortIDs.size > 0) {
|
|
827
|
+
// Da TrafoIDs nicht im Integral7Model hinterlegt werden, Trafos auf Basis der NsgSO-IDs ermitteln (äuqivalent zu Netz-Trafo2W)
|
|
828
|
+
const results = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_TRAFO3W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_TRAFO3W), [...nsgStandortIDs.values()]));
|
|
829
|
+
const filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
|
|
830
|
+
const netzTrafoResults = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.TRAFO3W, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.TRAFO3W), [...netzStandortIDs.values()]));
|
|
831
|
+
const netzTrafos = new Map(netzTrafoResults.map(obj => [obj.id, obj]));
|
|
832
|
+
for (const i7Data of filteredResults) {
|
|
833
|
+
const schemaObjKey = DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, data_types_1.DataTypes.NSG_TRAFO3W);
|
|
834
|
+
const nsgStandortObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.nsgso, variantenNr });
|
|
835
|
+
const nsgSo = DLConverterI7.getDbNsgObjectByID(nsgStandortObjKey);
|
|
836
|
+
if (nsgSo === undefined)
|
|
837
|
+
continue;
|
|
838
|
+
const powerTransformerUUID = this.inputArgs.integralID2UUID.get(i7Data.trafo3w);
|
|
839
|
+
const powerTransformer = powerTransformers.get(powerTransformerUUID);
|
|
840
|
+
if (powerTransformer === undefined)
|
|
841
|
+
continue;
|
|
842
|
+
// Ermittle die default-Zuordnung der Enden zu den Terminals der PowerTransformerEnds
|
|
843
|
+
const trafo3wNetz = netzTrafos.get(i7Data.trafo3w);
|
|
844
|
+
if (trafo3wNetz === undefined)
|
|
845
|
+
continue;
|
|
846
|
+
const pteW1 = this.inputArgs.powerTransformerEnds.get(this.inputArgs.integralID2UUID.get(trafo3wNetz.trafowicklung3w1));
|
|
847
|
+
const pteW2 = this.inputArgs.powerTransformerEnds.get(this.inputArgs.integralID2UUID.get(trafo3wNetz.trafowicklung3w2));
|
|
848
|
+
const pteW3 = this.inputArgs.powerTransformerEnds.get(this.inputArgs.integralID2UUID.get(trafo3wNetz.trafowicklung3w3));
|
|
849
|
+
// Der relative Punkt des Transformators ist die linke obere Ecke bezogen auf die Umrandungs-Bounding-Box
|
|
850
|
+
const trafoDiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(constants_1.NsgConstants.TRAFO3W_WIDTH / 2, constants_1.NsgConstants.TRAFO3W_HEIGHT / 2);
|
|
851
|
+
const powerTransformerDiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
852
|
+
xPosition: trafoDiagramObject.diagramObjectPoints[0].xPosition,
|
|
853
|
+
yPosition: trafoDiagramObject.diagramObjectPoints[0].yPosition,
|
|
854
|
+
rotation: (360 - (constants_1.NsgConstants.TAFO3W_RotationOrder.indexOf(i7Data.ausrichtung) * 30 + 180) % 360) % 360,
|
|
855
|
+
diagramObjectName: 'DiagramObject',
|
|
856
|
+
identifiedObjectUUID: powerTransformerUUID,
|
|
857
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
858
|
+
});
|
|
859
|
+
// Ermittle die Auswechslung der Enden
|
|
860
|
+
const exchangeGroups = constants_1.NsgConstants.TRAFO3W_ExchangeGroups;
|
|
861
|
+
let exchangeGroup = undefined;
|
|
862
|
+
for (const key of Object.keys(exchangeGroups)) {
|
|
863
|
+
if (exchangeGroups[key].indexOf(i7Data.ausrichtung) !== -1) {
|
|
864
|
+
exchangeGroup = constants_1.NsgConstants.TRAFO3W_ExchangeMap[key];
|
|
865
|
+
break;
|
|
866
|
+
}
|
|
867
|
+
}
|
|
868
|
+
// Ermittle die 'default'-Positionen der Enden ohne Berücksichtigung der Auswechslungen
|
|
869
|
+
const rotationenGroups = constants_1.NsgConstants.TRAFO3W_RotationGroups;
|
|
870
|
+
let rotationenGroup = undefined;
|
|
871
|
+
for (const key of Object.keys(rotationenGroups)) {
|
|
872
|
+
if (rotationenGroups[key].indexOf(i7Data.ausrichtung) !== -1) {
|
|
873
|
+
rotationenGroup = constants_1.NsgConstants.TRAFO3W_RotationGroup2Positions[key];
|
|
874
|
+
break;
|
|
875
|
+
}
|
|
876
|
+
}
|
|
877
|
+
// Falls eine x-Spiegelung vorliegt, tausche die Werte der Enden 2 und 3 miteinander
|
|
878
|
+
const xMirroring = i7Data.orientierung_cw === 1;
|
|
879
|
+
const createdDiagramObjects = [];
|
|
880
|
+
createdDiagramObjects.push(powerTransformerDiagramObject);
|
|
881
|
+
let terminal1DiagramObject;
|
|
882
|
+
if (pteW1?.terminal !== undefined) {
|
|
883
|
+
const coords = rotationenGroup[exchangeGroup[1]];
|
|
884
|
+
terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
885
|
+
xPosition: coords[0],
|
|
886
|
+
yPosition: coords[1],
|
|
887
|
+
diagramObjectName: 'DiagramObject',
|
|
888
|
+
identifiedObjectUUID: pteW1.terminal.getUUID(),
|
|
889
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
890
|
+
});
|
|
891
|
+
createdDiagramObjects.push(terminal1DiagramObject);
|
|
892
|
+
}
|
|
893
|
+
let terminal2DiagramObject;
|
|
894
|
+
if (pteW2?.terminal !== undefined) {
|
|
895
|
+
const coords = rotationenGroup[exchangeGroup[xMirroring ? 3 : 2]];
|
|
896
|
+
terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
897
|
+
xPosition: coords[0],
|
|
898
|
+
yPosition: coords[1],
|
|
899
|
+
diagramObjectName: 'DiagramObject',
|
|
900
|
+
identifiedObjectUUID: pteW2.terminal.getUUID(),
|
|
901
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
902
|
+
});
|
|
903
|
+
createdDiagramObjects.push(terminal2DiagramObject);
|
|
904
|
+
}
|
|
905
|
+
let terminal3DiagramObject;
|
|
906
|
+
if (pteW3?.terminal !== undefined) {
|
|
907
|
+
const coords = rotationenGroup[exchangeGroup[xMirroring ? 2 : 3]];
|
|
908
|
+
terminal3DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
909
|
+
xPosition: coords[0],
|
|
910
|
+
yPosition: coords[1],
|
|
911
|
+
diagramObjectName: 'DiagramObject',
|
|
912
|
+
identifiedObjectUUID: pteW3.terminal.getUUID(),
|
|
913
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
914
|
+
});
|
|
915
|
+
createdDiagramObjects.push(terminal3DiagramObject);
|
|
916
|
+
}
|
|
917
|
+
for (const diagramObject of createdDiagramObjects) {
|
|
918
|
+
for (const diagramObjectPoint of diagramObject.diagramObjectPoints) {
|
|
919
|
+
diagramObjectPoint.xPosition += i7Data.xrel;
|
|
920
|
+
diagramObjectPoint.yPosition += i7Data.yrel;
|
|
921
|
+
diagramObjectPoint.xPosition += nsgSo.xrel;
|
|
922
|
+
diagramObjectPoint.yPosition += nsgSo.yrel;
|
|
923
|
+
}
|
|
924
|
+
}
|
|
925
|
+
if (pteW1?.terminal !== undefined) {
|
|
926
|
+
const connectivityNodeDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(pteW1.terminal.getConnectivityNodeUUID());
|
|
927
|
+
if (connectivityNodeDiagramObject !== undefined) {
|
|
928
|
+
util_functions_1.DLUtilFunctions.copyAndPushDiagramObjectPoint(terminal1DiagramObject, connectivityNodeDiagramObject.diagramObjectPoints[0]);
|
|
929
|
+
}
|
|
930
|
+
}
|
|
931
|
+
if (pteW2?.terminal !== undefined) {
|
|
932
|
+
const connectivityNodeDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(pteW2.terminal.getConnectivityNodeUUID());
|
|
933
|
+
if (connectivityNodeDiagramObject !== undefined) {
|
|
934
|
+
util_functions_1.DLUtilFunctions.copyAndPushDiagramObjectPoint(terminal2DiagramObject, connectivityNodeDiagramObject.diagramObjectPoints[0]);
|
|
935
|
+
}
|
|
936
|
+
}
|
|
937
|
+
if (pteW3?.terminal !== undefined) {
|
|
938
|
+
const connectivityNodeDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(pteW3.terminal.getConnectivityNodeUUID());
|
|
939
|
+
if (connectivityNodeDiagramObject !== undefined) {
|
|
940
|
+
util_functions_1.DLUtilFunctions.copyAndPushDiagramObjectPoint(terminal3DiagramObject, connectivityNodeDiagramObject.diagramObjectPoints[0]);
|
|
941
|
+
}
|
|
942
|
+
}
|
|
943
|
+
DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
944
|
+
identifiedObjectUUID: powerTransformerUUID,
|
|
945
|
+
diagramObjectUUID: powerTransformerDiagramObject.getUUID()
|
|
946
|
+
});
|
|
947
|
+
DLConverterI7.addCimObjects(powerTransformerDiagramObject);
|
|
948
|
+
}
|
|
949
|
+
}
|
|
950
|
+
else {
|
|
951
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_TRAFO3W} ist nicht vorhanden.`);
|
|
952
|
+
}
|
|
953
|
+
}
|
|
954
|
+
async convertSchemaLeitungen(variantenNr, onlyEingeblendet) {
|
|
955
|
+
if (this.inputArgs.integralLeitungen === undefined) {
|
|
956
|
+
this.inputArgs.integralLeitungen = new Map();
|
|
957
|
+
}
|
|
958
|
+
if (this.inputArgs.integralHgueLeitungen === undefined) {
|
|
959
|
+
this.inputArgs.integralHgueLeitungen = new Map();
|
|
960
|
+
}
|
|
961
|
+
const leitungIDs = [...this.inputArgs.integralLeitungen.keys(), ...this.inputArgs.integralHgueLeitungen.keys()];
|
|
962
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LEITUNG) && this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LEITUNGSPUNKT) && leitungIDs.length > 0) {
|
|
963
|
+
const leitungResults = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_LEITUNG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_LEITUNG), leitungIDs));
|
|
964
|
+
let filteredLeitungResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(leitungResults, variantenNr, onlyEingeblendet);
|
|
965
|
+
const nsgLeitungIDs = filteredLeitungResults.map(elem => elem.id);
|
|
966
|
+
if (nsgLeitungIDs.length > 0) {
|
|
967
|
+
const leitungspktResults = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_LEITUNGSPUNKT, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_LEITUNGSPUNKT), nsgLeitungIDs));
|
|
968
|
+
let filteredLeitungspktResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(leitungspktResults, variantenNr, onlyEingeblendet);
|
|
969
|
+
for (const i7Data of filteredLeitungResults) {
|
|
970
|
+
const schemaObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.id, variantenNr });
|
|
971
|
+
DLConverterI7.addID2TypeMapping(schemaObjKey, data_types_1.DataTypes.NSG_LEITUNG);
|
|
972
|
+
const isACLine = this.inputArgs.integralLeitungen.get(i7Data.leitung);
|
|
973
|
+
const isErsatzlaengszweig = false;
|
|
974
|
+
let netzLeitungsObject;
|
|
975
|
+
if (isACLine) {
|
|
976
|
+
const netzLeitung = this.inputArgs.integralLeitungen.get(i7Data.leitung);
|
|
977
|
+
if (netzLeitung !== undefined) {
|
|
978
|
+
netzLeitungsObject = {
|
|
979
|
+
id: netzLeitung.id,
|
|
980
|
+
aknotenid: netzLeitung.aknotenid,
|
|
981
|
+
eknotenid: netzLeitung.eknotenid
|
|
982
|
+
};
|
|
983
|
+
}
|
|
984
|
+
}
|
|
985
|
+
else {
|
|
986
|
+
const netzHgueLeitung = this.inputArgs.integralHgueLeitungen.get(i7Data.leitung);
|
|
987
|
+
if (netzHgueLeitung !== undefined) {
|
|
988
|
+
netzLeitungsObject = {
|
|
989
|
+
id: netzHgueLeitung.id,
|
|
990
|
+
aknotenid: netzHgueLeitung.anetzobjekt,
|
|
991
|
+
eknotenid: netzHgueLeitung.enetzobjekt
|
|
992
|
+
};
|
|
993
|
+
}
|
|
994
|
+
}
|
|
995
|
+
if (netzLeitungsObject === undefined)
|
|
996
|
+
continue;
|
|
997
|
+
const anfSchemaTypeObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.anschlussanf, variantenNr });
|
|
998
|
+
let anfNsgObject = DLConverterI7.getDbNsgObjectByID(anfSchemaTypeObjKey);
|
|
999
|
+
let anfSchemaType = DLConverterI7.i7ID2Type.get(anfSchemaTypeObjKey);
|
|
1000
|
+
let anfDiagramObject;
|
|
1001
|
+
if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
|
|
1002
|
+
const nsgSchaltfeld = anfNsgObject;
|
|
1003
|
+
if (nsgSchaltfeld === undefined)
|
|
1004
|
+
continue;
|
|
1005
|
+
anfDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(nsgSchaltfeld.lastNodeCimUUID);
|
|
1006
|
+
}
|
|
1007
|
+
else if (anfSchemaType === data_types_1.DataTypes.NSG_NODE) {
|
|
1008
|
+
const aKnotenCimObjectUUID = this.inputArgs.integralID2UUID.get(netzLeitungsObject.aknotenid);
|
|
1009
|
+
anfDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(aKnotenCimObjectUUID);
|
|
1010
|
+
}
|
|
1011
|
+
else {
|
|
1012
|
+
let anfUUIDEntry = DLConverterI7.i7ID2cimUUIDs.get(anfSchemaTypeObjKey);
|
|
1013
|
+
if (anfUUIDEntry === undefined)
|
|
1014
|
+
continue;
|
|
1015
|
+
anfDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(anfUUIDEntry.identifiedObjectUUID);
|
|
1016
|
+
}
|
|
1017
|
+
const endSchemaTypeObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.anschlussend, variantenNr });
|
|
1018
|
+
let endNsgObject = DLConverterI7.getDbNsgObjectByID(endSchemaTypeObjKey);
|
|
1019
|
+
let endSchemaType = DLConverterI7.i7ID2Type.get(endSchemaTypeObjKey);
|
|
1020
|
+
let endDiagramObject;
|
|
1021
|
+
if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
|
|
1022
|
+
const nsgSchaltfeld = endNsgObject;
|
|
1023
|
+
if (nsgSchaltfeld === undefined)
|
|
1024
|
+
continue;
|
|
1025
|
+
endDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(nsgSchaltfeld.lastNodeCimUUID);
|
|
1026
|
+
}
|
|
1027
|
+
else if (endSchemaType === data_types_1.DataTypes.NSG_NODE) {
|
|
1028
|
+
const eKnotenCimObjectUUID = this.inputArgs.integralID2UUID.get(netzLeitungsObject.eknotenid);
|
|
1029
|
+
endDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(eKnotenCimObjectUUID);
|
|
1030
|
+
}
|
|
1031
|
+
else {
|
|
1032
|
+
let endUUIDEntry = DLConverterI7.i7ID2cimUUIDs.get(endSchemaTypeObjKey);
|
|
1033
|
+
if (endUUIDEntry === undefined)
|
|
1034
|
+
continue;
|
|
1035
|
+
endDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(endUUIDEntry.identifiedObjectUUID);
|
|
1036
|
+
}
|
|
1037
|
+
let tempDiagramObjectPoints = [];
|
|
1038
|
+
let tempAnfDiagramObject = anfDiagramObject;
|
|
1039
|
+
let tempEndDiagramObject = endDiagramObject;
|
|
1040
|
+
// Ausschließlich dann exportieren, wenn Anfang und Ende innerhalb des aktuellen Frames liegen
|
|
1041
|
+
if (tempAnfDiagramObject === undefined || tempEndDiagramObject === undefined)
|
|
1042
|
+
continue;
|
|
1043
|
+
tempDiagramObjectPoints.push({
|
|
1044
|
+
xPosition: tempAnfDiagramObject.diagramObjectPoints[0].xPosition,
|
|
1045
|
+
yPosition: tempAnfDiagramObject.diagramObjectPoints[0].yPosition
|
|
1046
|
+
});
|
|
1047
|
+
// Ermittle nur die Leitungspunkte, die mit der aktuell im Kontext befindlichen Leitung verknüpft sind
|
|
1048
|
+
const relevantLeitungspkts = filteredLeitungspktResults.filter(elem => elem.nsgleitung === i7Data.id).sort((a, b) => a.pos - b.pos);
|
|
1049
|
+
for (let a = 0; a < relevantLeitungspkts.length; a++) {
|
|
1050
|
+
const nsgLeitungspkt = relevantLeitungspkts[a];
|
|
1051
|
+
if (nsgLeitungspkt.userelpos === 1 && nsgLeitungspkt.reltoanf === 1) {
|
|
1052
|
+
const tempDiagramObjectPoint = {
|
|
1053
|
+
xPosition: tempAnfDiagramObject.diagramObjectPoints[0].xPosition,
|
|
1054
|
+
yPosition: tempAnfDiagramObject.diagramObjectPoints[0].yPosition
|
|
1055
|
+
};
|
|
1056
|
+
const tempOffsetArray = util_functions_1.DLUtilFunctions.getXYOffsetFromRelCM(anfSchemaType, anfNsgObject, i7Data.anschlussanf, nsgLeitungspkt);
|
|
1057
|
+
tempDiagramObjectPoint.xPosition += tempOffsetArray[0];
|
|
1058
|
+
tempDiagramObjectPoint.yPosition += tempOffsetArray[1];
|
|
1059
|
+
tempDiagramObjectPoints.push(tempDiagramObjectPoint);
|
|
1060
|
+
}
|
|
1061
|
+
else if (nsgLeitungspkt.userelpos === 1 && nsgLeitungspkt.reltoanf === 0) {
|
|
1062
|
+
const tempDiagramObjectPoint = {
|
|
1063
|
+
xPosition: tempEndDiagramObject.diagramObjectPoints[0].xPosition,
|
|
1064
|
+
yPosition: tempEndDiagramObject.diagramObjectPoints[0].yPosition
|
|
1065
|
+
};
|
|
1066
|
+
const tempOffsetArray = util_functions_1.DLUtilFunctions.getXYOffsetFromRelCM(endSchemaType, endNsgObject, i7Data.anschlussend, nsgLeitungspkt);
|
|
1067
|
+
tempDiagramObjectPoint.xPosition += tempOffsetArray[0];
|
|
1068
|
+
tempDiagramObjectPoint.yPosition += tempOffsetArray[1];
|
|
1069
|
+
tempDiagramObjectPoints.push(tempDiagramObjectPoint);
|
|
1070
|
+
}
|
|
1071
|
+
else {
|
|
1072
|
+
tempDiagramObjectPoints.push({ xPosition: nsgLeitungspkt.xrel, yPosition: nsgLeitungspkt.yrel });
|
|
1073
|
+
}
|
|
1074
|
+
}
|
|
1075
|
+
tempDiagramObjectPoints.push({
|
|
1076
|
+
xPosition: tempEndDiagramObject.diagramObjectPoints[0].xPosition,
|
|
1077
|
+
yPosition: tempEndDiagramObject.diagramObjectPoints[0].yPosition
|
|
1078
|
+
});
|
|
1079
|
+
// Zuweisung
|
|
1080
|
+
if (isACLine) {
|
|
1081
|
+
const netzLeitungCimObj = this.inputArgs.lines.get(this.inputArgs.integralID2UUID.get(netzLeitungsObject.id));
|
|
1082
|
+
// Teile die komplette Leitung auf die ACLineSegmente auf [es kann sein, dass die Leitung sich aus mehreren ACLineSegments
|
|
1083
|
+
// zusammensetzt und dann soll prozentual die komplette Leitung auf die ACLineSegmente aufgeteilt werden (ggfs. werden dabei
|
|
1084
|
+
// neue DiagramObjectPoints erzeugt)
|
|
1085
|
+
const cableAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.KABEL);
|
|
1086
|
+
const overheadAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.FREILEITUNG);
|
|
1087
|
+
let type = integral_sql_1.I7Objects.STROMKREISABSCHNITT;
|
|
1088
|
+
if (cableAvailable && overheadAvailable) {
|
|
1089
|
+
type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL_FREILEITUNG;
|
|
1090
|
+
}
|
|
1091
|
+
else if (cableAvailable) {
|
|
1092
|
+
type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL;
|
|
1093
|
+
}
|
|
1094
|
+
else if (overheadAvailable) {
|
|
1095
|
+
type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_FREILEITUNG;
|
|
1096
|
+
}
|
|
1097
|
+
// TODO quickfix for parameter 'availableColumnNames'
|
|
1098
|
+
const leitungStromkreisabschnitt = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(type, ['leitung', 'laenge', 'pos', 'typ'], [netzLeitungsObject.id]));
|
|
1099
|
+
leitungStromkreisabschnitt.sort((a, b) => a.pos - b.pos);
|
|
1100
|
+
const acSegmentPercentages = [];
|
|
1101
|
+
let completeLength = 0;
|
|
1102
|
+
for (let a = 0; a < leitungStromkreisabschnitt.length; ++a) {
|
|
1103
|
+
completeLength += leitungStromkreisabschnitt[a].laenge;
|
|
1104
|
+
}
|
|
1105
|
+
let crtLength = 0;
|
|
1106
|
+
// Berechne die Prozent-Anteile eines Leitungsabschnittes bezogen auf die Gesamtlänge
|
|
1107
|
+
for (let a = 0; a < leitungStromkreisabschnitt.length; ++a) {
|
|
1108
|
+
crtLength += leitungStromkreisabschnitt[a].laenge;
|
|
1109
|
+
acSegmentPercentages.push(crtLength / completeLength);
|
|
1110
|
+
}
|
|
1111
|
+
const eqUUIDs = netzLeitungCimObj.equipments.map(value => value.getUUID());
|
|
1112
|
+
const resultingDiagramObjects = util_functions_1.DLUtilFunctions.convertACLineSegment(completeLength, acSegmentPercentages, eqUUIDs, tempDiagramObjectPoints);
|
|
1113
|
+
for (const diagramObject of resultingDiagramObjects) {
|
|
1114
|
+
diagramObject.diagramUUID = this.activeDiagram.getUUID();
|
|
1115
|
+
}
|
|
1116
|
+
// DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
1117
|
+
// identifiedObjectUUID: querzweigObjectUUID,
|
|
1118
|
+
// diagramObjectUUID: querzweigDiagramObject.getUUID()
|
|
1119
|
+
// });
|
|
1120
|
+
DLConverterI7.addCimObjects(...resultingDiagramObjects);
|
|
1121
|
+
// DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
1122
|
+
// identifiedObjectUUID: querzweigObjectUUID,
|
|
1123
|
+
// diagramObjectUUID: querzweigDiagramObject.getUUID()
|
|
1124
|
+
// });
|
|
1125
|
+
// DLConverterI7.addCimObjects(querzweigDiagramObject);
|
|
1126
|
+
}
|
|
1127
|
+
else if (isErsatzlaengszweig) {
|
|
1128
|
+
}
|
|
1129
|
+
else {
|
|
1130
|
+
const netzLeitungCimObj = this.inputArgs.objects.get(this.inputArgs.integralID2UUID.get(netzLeitungsObject.id));
|
|
1131
|
+
const diagramObject = new DiagramObject_1.DiagramObject((0, utils_1.generateUUID)());
|
|
1132
|
+
diagramObject.diagramUUID = this.activeDiagram.getUUID();
|
|
1133
|
+
diagramObject.identifiedObjectUUID = this.inputArgs.integralID2UUID.get(netzLeitungsObject.id);
|
|
1134
|
+
// diagramObject.setDiagram(diagram);
|
|
1135
|
+
// diagram.addDiagramObject(diagramObject);
|
|
1136
|
+
// diagramObject.setIdentifiedObjectUUID();
|
|
1137
|
+
if (netzLeitungCimObj !== undefined) {
|
|
1138
|
+
diagramObject.name = 'DiagramObj ' + (netzLeitungCimObj.shortName ?? '');
|
|
1139
|
+
}
|
|
1140
|
+
else {
|
|
1141
|
+
diagramObject.name = 'DiagramObj HGUE-Leitung';
|
|
1142
|
+
}
|
|
1143
|
+
for (let idx = 0; idx < tempDiagramObjectPoints.length; ++idx) {
|
|
1144
|
+
const diagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempDiagramObjectPoints[idx].xPosition, tempDiagramObjectPoints[idx].yPosition, idx + 1);
|
|
1145
|
+
diagramObjectPoint.mrid = (0, utils_1.generateUUID)();
|
|
1146
|
+
diagramObjectPoint.diagramObject = diagramObject;
|
|
1147
|
+
diagramObject.addDiagramObjectPoint(diagramObjectPoint);
|
|
1148
|
+
// this.activeDiagram.addDiagramObject(diagramObject);
|
|
1149
|
+
}
|
|
1150
|
+
DLConverterI7.addCimObjects(diagramObject);
|
|
1151
|
+
}
|
|
1152
|
+
const clonedAnfDiagramObject = util_functions_1.DLUtilFunctions.cloneDiagramObject(anfDiagramObject);
|
|
1153
|
+
clonedAnfDiagramObject.diagramUUID = this.activeDiagram.getUUID();
|
|
1154
|
+
const clonedEndDiagramObject = util_functions_1.DLUtilFunctions.cloneDiagramObject(endDiagramObject);
|
|
1155
|
+
clonedEndDiagramObject.diagramUUID = this.activeDiagram.getUUID();
|
|
1156
|
+
DLConverterI7.addCimObjects(clonedAnfDiagramObject, clonedEndDiagramObject);
|
|
1157
|
+
}
|
|
1158
|
+
}
|
|
1159
|
+
}
|
|
1160
|
+
else {
|
|
1161
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_LEITUNG} oder ${integral_sql_1.Integral7TableNames.NSG_LEITUNGSPUNKT} ist nicht vorhanden.`);
|
|
1162
|
+
}
|
|
1163
|
+
}
|
|
1164
|
+
async convertSchemaQuerzweige(variantenNr, onlyEingeblendet) {
|
|
1165
|
+
const whereIDs = [...DLConverterI7.i7ID2DbNsgObjectInFrame.keys()].map(arg => DLConverterI7.parseSchemaKeyObject(arg).i7ID);
|
|
1166
|
+
// const whereIDs = [...integral7.i7SchemaID2Type.keys()].map(value => DLUtilFunctions.parseSchemaKey(value).id);
|
|
1167
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) && whereIDs.length > 0) {
|
|
1168
|
+
const results = await this.mysqlController.execQuery((0, integral_sql_1.getI7Query)(integral_sql_1.I7Objects.NSG_QUERZWEIG, this.getAvailableColumnNames(integral_sql_1.Integral7TableNames.NSG_QUERZWEIG), whereIDs));
|
|
1169
|
+
let filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
|
|
1170
|
+
for (const i7Data of filteredResults) {
|
|
1171
|
+
const schemaObjKey = DLConverterI7.registerNsgObjectAndGetSchemaKay(i7Data, data_types_1.DataTypes.NSG_QUERZWEIG);
|
|
1172
|
+
const referenceObjKey = DLConverterI7.createSchemaKeyObject({ i7ID: i7Data.bezugsobjekt, variantenNr });
|
|
1173
|
+
const referenceObjType = DLConverterI7.i7ID2Type.get(referenceObjKey);
|
|
1174
|
+
const referenceObj = DLConverterI7.getDbNsgObjectByID(referenceObjKey);
|
|
1175
|
+
let refXPos = 0;
|
|
1176
|
+
let refYPos = 0;
|
|
1177
|
+
let xPos = i7Data.xrel;
|
|
1178
|
+
let yPos = i7Data.yrel;
|
|
1179
|
+
let refCNNodeUUID = undefined;
|
|
1180
|
+
// const querzweigType = this.inputArgs.integralID2Type.get(i7Data.querzweig);
|
|
1181
|
+
// if (querzweigType === undefined) {
|
|
1182
|
+
// continue; //ignore Querzweig if querzweigType is not defined.
|
|
1183
|
+
// }
|
|
1184
|
+
let nsgQuerzweigWidth;
|
|
1185
|
+
let nsgQuerzweigHeight;
|
|
1186
|
+
// if (querzweigType === Integral7TableNames.HGUE_KOPFSTATION_VSC || querzweigType === Integral7TableNames.HGUE_KOPFSTATION_KLASSISCH) {
|
|
1187
|
+
// nsgQuerzweigWidth = NsgConstants.HGUE_QUERZWEIG_OBJ_WIDTH;
|
|
1188
|
+
// nsgQuerzweigHeight = NsgConstants.HGUE_QUERZWEIG_OBJ_HEIGHT;
|
|
1189
|
+
// } else {
|
|
1190
|
+
nsgQuerzweigWidth = constants_1.NsgConstants.QUERZWEIG_OBJ_WIDTH;
|
|
1191
|
+
nsgQuerzweigHeight = constants_1.NsgConstants.QUERZWEIG_OBJ_HEIGHT;
|
|
1192
|
+
// }
|
|
1193
|
+
if (referenceObjType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
|
|
1194
|
+
const nsgSchaltfeld = referenceObj;
|
|
1195
|
+
refCNNodeUUID = nsgSchaltfeld.lastNodeCimUUID;
|
|
1196
|
+
const referenceDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(nsgSchaltfeld.lastNodeCimUUID);
|
|
1197
|
+
if (referenceDiagramObject === undefined)
|
|
1198
|
+
continue;
|
|
1199
|
+
refXPos = referenceDiagramObject.diagramObjectPoints[0].xPosition;
|
|
1200
|
+
refYPos = referenceDiagramObject.diagramObjectPoints[0].yPosition;
|
|
1201
|
+
xPos += refXPos;
|
|
1202
|
+
yPos += refYPos;
|
|
1203
|
+
// additional positioning needed based on the orientation of the bay
|
|
1204
|
+
switch (nsgSchaltfeld.orientation) {
|
|
1205
|
+
case 3: // Left-Direction
|
|
1206
|
+
xPos += nsgQuerzweigWidth / 2;
|
|
1207
|
+
yPos -= nsgQuerzweigHeight / 2;
|
|
1208
|
+
break;
|
|
1209
|
+
case 0: // Top-Direction
|
|
1210
|
+
xPos -= nsgQuerzweigWidth / 2;
|
|
1211
|
+
yPos += nsgQuerzweigHeight / 2;
|
|
1212
|
+
break;
|
|
1213
|
+
case 1: // Right-Direction
|
|
1214
|
+
xPos += nsgQuerzweigWidth / 2;
|
|
1215
|
+
yPos -= nsgQuerzweigHeight / 2;
|
|
1216
|
+
// subtract width of bay from x coordinate
|
|
1217
|
+
xPos -= nsgSchaltfeld.hoehe;
|
|
1218
|
+
break;
|
|
1219
|
+
case 2: // Bottom-Direction
|
|
1220
|
+
xPos -= nsgQuerzweigWidth / 2;
|
|
1221
|
+
yPos += nsgQuerzweigHeight / 2;
|
|
1222
|
+
// subtract width from y coordinate
|
|
1223
|
+
yPos -= nsgSchaltfeld.hoehe;
|
|
1224
|
+
break;
|
|
1225
|
+
}
|
|
1226
|
+
}
|
|
1227
|
+
else if (referenceObjType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
|
|
1228
|
+
// xrel and yrel points to the bottom right of the element
|
|
1229
|
+
refCNNodeUUID = DLConverterI7.i7ID2cimUUIDs.get(referenceObjKey).identifiedObjectUUID;
|
|
1230
|
+
const referenceDiagramObject = DLConverterI7.cimUUID2DiagramObject.get(refCNNodeUUID);
|
|
1231
|
+
if (referenceDiagramObject === undefined)
|
|
1232
|
+
continue;
|
|
1233
|
+
refXPos = referenceDiagramObject.diagramObjectPoints[0].xPosition;
|
|
1234
|
+
refYPos = referenceDiagramObject.diagramObjectPoints[0].yPosition;
|
|
1235
|
+
xPos += refXPos;
|
|
1236
|
+
yPos += refYPos;
|
|
1237
|
+
xPos -= nsgQuerzweigWidth / 2;
|
|
1238
|
+
yPos -= nsgQuerzweigHeight / 2;
|
|
1239
|
+
}
|
|
1240
|
+
else {
|
|
1241
|
+
this.logger.info(`unhandled reference type '${referenceObjType}' for id ${i7Data.bezugsobjekt} (nsg_nsgquerzweig.id ${i7Data.id})!`);
|
|
1242
|
+
continue;
|
|
1243
|
+
}
|
|
1244
|
+
const querzweigObjectUUID = this.inputArgs.integralID2UUID.get(i7Data.querzweig);
|
|
1245
|
+
const querzweigDiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
|
|
1246
|
+
xPosition: xPos,
|
|
1247
|
+
yPosition: yPos,
|
|
1248
|
+
rotation: util_functions_1.DLUtilFunctions.getRotationBasedOnQuerzweig(i7Data.ausrichtung),
|
|
1249
|
+
diagramObjectName: 'DiagramObject',
|
|
1250
|
+
identifiedObjectUUID: querzweigObjectUUID,
|
|
1251
|
+
diagramUUID: this.activeDiagram.getUUID()
|
|
1252
|
+
});
|
|
1253
|
+
DLConverterI7.addIDsRelationMapping(schemaObjKey, {
|
|
1254
|
+
identifiedObjectUUID: querzweigObjectUUID,
|
|
1255
|
+
diagramObjectUUID: querzweigDiagramObject.getUUID()
|
|
1256
|
+
});
|
|
1257
|
+
DLConverterI7.addCimObjects(querzweigDiagramObject);
|
|
1258
|
+
}
|
|
1259
|
+
}
|
|
1260
|
+
else {
|
|
1261
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_QUERZWEIG} ist nicht vorhanden.`);
|
|
1262
|
+
}
|
|
1263
|
+
}
|
|
1264
|
+
convertSchemaTerminals() {
|
|
1265
|
+
const exportedTerminals = new Set();
|
|
1266
|
+
for (const diagramObject of DLConverterI7.cimUUID2DiagramObject.values()) {
|
|
1267
|
+
const identifiedObject = this.inputArgs.objects.get(diagramObject.getIdentifiedObjectUUID());
|
|
1268
|
+
if (identifiedObject instanceof ConnectivityNode_1.ConnectivityNode) {
|
|
1269
|
+
identifiedObject.terminals.forEach(terminal => this.convertTerminal(terminal, exportedTerminals));
|
|
1270
|
+
}
|
|
1271
|
+
else if (identifiedObject instanceof ConductingEquipment_1.ConductingEquipment) {
|
|
1272
|
+
identifiedObject.terminals.forEach(terminal => this.convertTerminal(terminal, exportedTerminals));
|
|
1273
|
+
}
|
|
1274
|
+
}
|
|
1275
|
+
}
|
|
1276
|
+
convertTerminal(terminal, exportedTerminals) {
|
|
1277
|
+
if (exportedTerminals.has(terminal.getUUID()))
|
|
1278
|
+
return;
|
|
1279
|
+
exportedTerminals.add(terminal.getUUID());
|
|
1280
|
+
const connectivityNodeUUID = terminal.getConnectivityNodeUUID();
|
|
1281
|
+
const connectivityNode = this.inputArgs.objects.get(connectivityNodeUUID);
|
|
1282
|
+
const conductingEquipmentUUID = terminal.getConductingEquipmentUUID();
|
|
1283
|
+
const conductingEquipment = this.inputArgs.objects.get(conductingEquipmentUUID);
|
|
1284
|
+
if (connectivityNode === undefined || conductingEquipment === undefined)
|
|
1285
|
+
return;
|
|
1286
|
+
const cnDiagramObject = DLConverterI7.getDiagramObjectByUUID(connectivityNodeUUID); //connectivityNode.getDiagramObjects()?.filter(arg => arg.diagramUUID === this.activeDiagram.getUUID())[0];
|
|
1287
|
+
const ceDiagramObject = DLConverterI7.getDiagramObjectByUUID(conductingEquipmentUUID); //conductingEquipment.getDiagramObjects()?.filter(arg => arg.diagramUUID === this.activeDiagram.getUUID())[0];
|
|
1288
|
+
if (cnDiagramObject === undefined || ceDiagramObject === undefined)
|
|
1289
|
+
return;
|
|
1290
|
+
const terminalDiagramObject = new DiagramObject_1.DiagramObject((0, utils_1.generateUUID)());
|
|
1291
|
+
terminalDiagramObject.identifiedObjectUUID = terminal.getUUID();
|
|
1292
|
+
terminalDiagramObject.diagramUUID = this.activeDiagram.getUUID();
|
|
1293
|
+
const cnTerminals = [...connectivityNode.terminals.values()];
|
|
1294
|
+
let isBusbarSectionConnectivityNode = false;
|
|
1295
|
+
for (let a = 0; a < cnTerminals.length && !isBusbarSectionConnectivityNode; ++a) {
|
|
1296
|
+
const possibleBusbarSectionObject = this.inputArgs.objects.get(cnTerminals[a].getConductingEquipmentUUID());
|
|
1297
|
+
if (possibleBusbarSectionObject instanceof BusbarSection_1.BusbarSection) {
|
|
1298
|
+
isBusbarSectionConnectivityNode = true;
|
|
1299
|
+
}
|
|
1300
|
+
}
|
|
1301
|
+
/* BEGIN: check whether ConductingEquipment needs a specific pre-extraction of a single DiagramObjectPoint */
|
|
1302
|
+
const ceDiagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint();
|
|
1303
|
+
ceDiagramObjectPoint.mrid = (0, utils_1.generateUUID)();
|
|
1304
|
+
if (conductingEquipment instanceof ACLineSegment_1.ACLineSegment) {
|
|
1305
|
+
// in case of a BusbarSection, the DiagramObject of a ConnectivityNode contains multiple DiagramObjectPoints
|
|
1306
|
+
// therefore use the center-point of the BusbarSection as a reference point
|
|
1307
|
+
const cnCenterPoint = util_functions_1.DLUtilFunctions.getCenterOfPoints(cnDiagramObject.diagramObjectPoints);
|
|
1308
|
+
// determine the nearest ACLineSegment-DiagramObjectPoint to the ConnectivityNode-DiagramObjectPoint
|
|
1309
|
+
let closestDiagramObjectPoint = ceDiagramObject.diagramObjectPoints[0];
|
|
1310
|
+
let dist = util_functions_1.DLUtilFunctions.lengthOfVector([
|
|
1311
|
+
closestDiagramObjectPoint.xPosition - cnCenterPoint[0],
|
|
1312
|
+
closestDiagramObjectPoint.yPosition - cnCenterPoint[1]
|
|
1313
|
+
]);
|
|
1314
|
+
for (let a = 1; a < ceDiagramObject.diagramObjectPoints.length; ++a) {
|
|
1315
|
+
const distToCheck = util_functions_1.DLUtilFunctions.lengthOfVector([
|
|
1316
|
+
ceDiagramObject.diagramObjectPoints[a].xPosition - cnCenterPoint[0],
|
|
1317
|
+
ceDiagramObject.diagramObjectPoints[a].yPosition - cnCenterPoint[1]
|
|
1318
|
+
]);
|
|
1319
|
+
if (distToCheck < dist) {
|
|
1320
|
+
closestDiagramObjectPoint = ceDiagramObject.diagramObjectPoints[a];
|
|
1321
|
+
dist = distToCheck;
|
|
1322
|
+
}
|
|
1323
|
+
}
|
|
1324
|
+
ceDiagramObjectPoint.xPosition = closestDiagramObjectPoint.xPosition;
|
|
1325
|
+
ceDiagramObjectPoint.yPosition = closestDiagramObjectPoint.yPosition;
|
|
1326
|
+
}
|
|
1327
|
+
else {
|
|
1328
|
+
ceDiagramObjectPoint.xPosition = ceDiagramObject.diagramObjectPoints[0].xPosition;
|
|
1329
|
+
ceDiagramObjectPoint.yPosition = ceDiagramObject.diagramObjectPoints[0].yPosition;
|
|
1330
|
+
}
|
|
1331
|
+
/* END: check whether ConductingEquipment needs a specific pre-extraction of a single DiagramObjectPoint */
|
|
1332
|
+
if (isBusbarSectionConnectivityNode) {
|
|
1333
|
+
// special case for busbarSections
|
|
1334
|
+
this.convertBusbarSectionCNTerminal(terminalDiagramObject, cnDiagramObject, ceDiagramObjectPoint);
|
|
1335
|
+
}
|
|
1336
|
+
else {
|
|
1337
|
+
// default case:
|
|
1338
|
+
ceDiagramObjectPoint.diagramObject = terminalDiagramObject;
|
|
1339
|
+
terminalDiagramObject.diagramObjectPoints.push(ceDiagramObjectPoint);
|
|
1340
|
+
const diagramObjectPoint2 = new DiagramObjectPoint_1.DiagramObjectPoint();
|
|
1341
|
+
diagramObjectPoint2.mrid = (0, utils_1.generateUUID)();
|
|
1342
|
+
diagramObjectPoint2.xPosition = cnDiagramObject.diagramObjectPoints[0].xPosition;
|
|
1343
|
+
diagramObjectPoint2.yPosition = cnDiagramObject.diagramObjectPoints[0].yPosition;
|
|
1344
|
+
diagramObjectPoint2.diagramObject = terminalDiagramObject;
|
|
1345
|
+
terminalDiagramObject.diagramObjectPoints.push(diagramObjectPoint2);
|
|
1346
|
+
}
|
|
1347
|
+
for (let a = 0; a < terminalDiagramObject.diagramObjectPoints.length; ++a) {
|
|
1348
|
+
terminalDiagramObject.diagramObjectPoints[a].sequenceNumber = (a + 1);
|
|
1349
|
+
}
|
|
1350
|
+
DLConverterI7.addCimObjects(terminalDiagramObject);
|
|
1351
|
+
}
|
|
1352
|
+
convertBusbarSectionCNTerminal(terminalDiagramObject, cnDiagramObject, ceDiagramObjectPoint) {
|
|
1353
|
+
// determine the point, which fits best
|
|
1354
|
+
// the one of three possible points will be taken that has the shortest vector
|
|
1355
|
+
const dopCE = ceDiagramObjectPoint;
|
|
1356
|
+
const dop1BusbarSection = new DiagramObjectPoint_1.DiagramObjectPoint();
|
|
1357
|
+
dop1BusbarSection.mrid = (0, utils_1.generateUUID)();
|
|
1358
|
+
dop1BusbarSection.xPosition = cnDiagramObject.diagramObjectPoints[0].xPosition;
|
|
1359
|
+
dop1BusbarSection.yPosition = cnDiagramObject.diagramObjectPoints[0].yPosition;
|
|
1360
|
+
const dop2BusbarSection = new DiagramObjectPoint_1.DiagramObjectPoint();
|
|
1361
|
+
dop2BusbarSection.mrid = (0, utils_1.generateUUID)();
|
|
1362
|
+
dop2BusbarSection.xPosition = cnDiagramObject.diagramObjectPoints[1].xPosition;
|
|
1363
|
+
dop2BusbarSection.yPosition = cnDiagramObject.diagramObjectPoints[1].yPosition;
|
|
1364
|
+
const tempVec = util_functions_1.DLUtilFunctions.vec2([dop1BusbarSection.xPosition, dop1BusbarSection.yPosition], [dop2BusbarSection.xPosition, dop2BusbarSection.yPosition], [dopCE.xPosition, dopCE.yPosition]);
|
|
1365
|
+
const dist1 = util_functions_1.DLUtilFunctions.distanceVector2Line(tempVec, [dopCE.xPosition, dopCE.yPosition], [dop1BusbarSection.xPosition, dop1BusbarSection.yPosition]);
|
|
1366
|
+
const dist2 = util_functions_1.DLUtilFunctions.distanceVector2Line(tempVec, [dopCE.xPosition, dopCE.yPosition], [dop2BusbarSection.xPosition, dop2BusbarSection.yPosition]);
|
|
1367
|
+
terminalDiagramObject.diagramObjectPoints.push(dopCE);
|
|
1368
|
+
dopCE.diagramObject = terminalDiagramObject;
|
|
1369
|
+
if (util_functions_1.DLUtilFunctions.isNegativeOrZero(dist1) === util_functions_1.DLUtilFunctions.isNegativeOrZero(dist2)) {
|
|
1370
|
+
// choice 1 or 2: dopCE is left or right in relation to the BusbarSection-line
|
|
1371
|
+
const distDopCEdop1BS = util_functions_1.DLUtilFunctions.lengthOfVector([dopCE.xPosition - dop1BusbarSection.xPosition, dopCE.yPosition - dop1BusbarSection.yPosition]);
|
|
1372
|
+
const distDopCEdop2BS = util_functions_1.DLUtilFunctions.lengthOfVector([dopCE.xPosition - dop2BusbarSection.xPosition, dopCE.yPosition - dop2BusbarSection.yPosition]);
|
|
1373
|
+
const distDop1BSdop2BS = util_functions_1.DLUtilFunctions.lengthOfVector([dop1BusbarSection.xPosition - dop2BusbarSection.xPosition, dop1BusbarSection.yPosition - dop2BusbarSection.yPosition]);
|
|
1374
|
+
if (Math.abs(distDopCEdop1BS + distDopCEdop2BS - distDop1BSdop2BS) < util_functions_1.DLUtilFunctions.EPSILON) {
|
|
1375
|
+
// dopCE is on busbar line
|
|
1376
|
+
const dopIntersection = new DiagramObjectPoint_1.DiagramObjectPoint();
|
|
1377
|
+
dopIntersection.mrid = (0, utils_1.generateUUID)();
|
|
1378
|
+
dopIntersection.xPosition = dopCE.xPosition;
|
|
1379
|
+
dopIntersection.yPosition = dopCE.yPosition;
|
|
1380
|
+
terminalDiagramObject.diagramObjectPoints.push(dopIntersection);
|
|
1381
|
+
dopIntersection.diagramObject = terminalDiagramObject;
|
|
1382
|
+
}
|
|
1383
|
+
else {
|
|
1384
|
+
if (distDopCEdop1BS < distDopCEdop2BS) {
|
|
1385
|
+
terminalDiagramObject.diagramObjectPoints.push(dop1BusbarSection);
|
|
1386
|
+
dop1BusbarSection.diagramObject = terminalDiagramObject;
|
|
1387
|
+
}
|
|
1388
|
+
else {
|
|
1389
|
+
terminalDiagramObject.diagramObjectPoints.push(dop2BusbarSection);
|
|
1390
|
+
dop2BusbarSection.diagramObject = terminalDiagramObject;
|
|
1391
|
+
}
|
|
1392
|
+
}
|
|
1393
|
+
}
|
|
1394
|
+
else {
|
|
1395
|
+
// choice 3: the intersection of the busbar and the perpendicular vector to the conductingEquipment
|
|
1396
|
+
const dopIntersection = new DiagramObjectPoint_1.DiagramObjectPoint();
|
|
1397
|
+
dopIntersection.mrid = (0, utils_1.generateUUID)();
|
|
1398
|
+
dopIntersection.xPosition = tempVec[0];
|
|
1399
|
+
dopIntersection.yPosition = tempVec[1];
|
|
1400
|
+
terminalDiagramObject.diagramObjectPoints.push(dopIntersection);
|
|
1401
|
+
dopIntersection.diagramObject = terminalDiagramObject;
|
|
1402
|
+
}
|
|
1403
|
+
}
|
|
1404
|
+
filterTablesByAvailability(relevantTables) {
|
|
1405
|
+
let filteredRelevantTables = [];
|
|
1406
|
+
for (const relevantTable of relevantTables) {
|
|
1407
|
+
if (this.isTableAvailable(relevantTable)) {
|
|
1408
|
+
filteredRelevantTables.push(relevantTable);
|
|
1409
|
+
}
|
|
1410
|
+
}
|
|
1411
|
+
return filteredRelevantTables;
|
|
1412
|
+
}
|
|
1413
|
+
isTableAvailable(tableName) {
|
|
1414
|
+
return this.i7TableName2Table.has(tableName);
|
|
1415
|
+
}
|
|
1416
|
+
getAvailableColumnNames(tableName) {
|
|
1417
|
+
return this.i7TableName2Table.get(tableName).columnNames;
|
|
1418
|
+
}
|
|
1419
|
+
async runAndLogPerformance(func, ...args) {
|
|
1420
|
+
const startTime = perf_hooks_1.performance.now();
|
|
1421
|
+
await func.apply(this, args);
|
|
1422
|
+
this.logger.debug(`${func.name} ${(perf_hooks_1.performance.now() - startTime) / 1000} seconds`);
|
|
1423
|
+
console.log(`${func.name} ${(perf_hooks_1.performance.now() - startTime) / 1000} seconds`);
|
|
1424
|
+
}
|
|
1425
|
+
}
|
|
1426
|
+
exports.DLConverterI7 = DLConverterI7;
|
|
1427
|
+
//# sourceMappingURL=dl-converter-i7.js.map
|