@enervance/insight-cim-model 0.0.50 → 0.0.51
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/constants/cim-class-definition.js +2 -0
- package/dist/constants/cim-class-definition.js.map +1 -1
- package/dist/constants/cim-class-names.d.ts +1 -0
- package/dist/constants/cim-class-names.js +1 -0
- package/dist/constants/cim-class-names.js.map +1 -1
- package/dist/converter/integral7/converter-i7.js +472 -395
- package/dist/converter/integral7/converter-i7.js.map +1 -1
- package/dist/converter/integral7/model/dl-utils/util-functions.js +36 -28
- package/dist/converter/integral7/model/dl-utils/util-functions.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/model/assets/AssetOwner.js +3 -1
- package/dist/model/assets/AssetOwner.js.map +1 -1
- package/dist/model/assets/AssetUser.js +3 -2
- package/dist/model/assets/AssetUser.js.map +1 -1
- package/dist/model/assets/Facility.js +1 -0
- package/dist/model/assets/Facility.js.map +1 -1
- package/dist/model/common/Organisation.d.ts +11 -0
- package/dist/model/common/Organisation.js +58 -0
- package/dist/model/common/Organisation.js.map +1 -0
- package/dist/model/common/OrganisationRole.d.ts +6 -1
- package/dist/model/common/OrganisationRole.js +10 -0
- package/dist/model/common/OrganisationRole.js.map +1 -1
- package/dist/model/core/IdentifiedObject.js +3 -1
- package/dist/model/core/IdentifiedObject.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONAssetCommunicationEquipment.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONAssetCommunicationEquipment.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONAssetConstructionMaintenance.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONAssetConstructionMaintenance.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONAssetPrimaryEquipment.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONAssetPrimaryEquipment.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONAssetSecondaryEquipment.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONAssetSecondaryEquipment.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONContractingAuthority.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONContractingAuthority.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONFacility.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONLeaseholder.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONLeaseholder.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONLineDistrict.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONLineDistrict.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONServiceProvider.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONServiceProvider.js.map +1 -1
- package/dist/model/extensions/amprion/assets/AMPRIONTeam.js +3 -2
- package/dist/model/extensions/amprion/assets/AMPRIONTeam.js.map +1 -1
- package/dist/model/model/Model.d.ts +4 -0
- package/dist/model/model/Model.js +9 -0
- package/dist/model/model/Model.js.map +1 -1
- package/package.json +1 -1
|
@@ -161,87 +161,77 @@ class ConverterI7 {
|
|
|
161
161
|
convert(objectMappingConfig, defaultValuesConfig, energyTypesConfig, exportConfig, tempDirPath) {
|
|
162
162
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
163
163
|
return new Promise((resolve, reject) => tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
for (const
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
resolve(yield utils_2.generateNodeStream(zip));
|
|
236
|
-
}
|
|
237
|
-
catch (e) {
|
|
238
|
-
this.logger.error(e);
|
|
239
|
-
console.error('ERROR:' + e);
|
|
240
|
-
reject({ status: 'error', message: e.toString() });
|
|
241
|
-
}
|
|
242
|
-
finally {
|
|
243
|
-
yield this.dropColumnIndex();
|
|
244
|
-
}
|
|
164
|
+
yield this.createColumnIndex();
|
|
165
|
+
yield this.configExportFrames(exportConfig, defaultValuesConfig, tempDirPath);
|
|
166
|
+
yield this.convertBetriebsmitteltypenKdrossel();
|
|
167
|
+
yield this.convertBetriebsmitteltypenLeitung();
|
|
168
|
+
yield this.convertBetriebsmitteltypenTrafo();
|
|
169
|
+
yield this.convertBetriebsmitteltypenGenerator();
|
|
170
|
+
yield this.convertBetriebsmitteltypenAsynchronmotor();
|
|
171
|
+
yield this.convertMultiplikationsfaktoren();
|
|
172
|
+
yield this.queryLeitungsAnschlussIDs();
|
|
173
|
+
yield this.queryTrafosAnschlussIDs();
|
|
174
|
+
yield this.queryHgueAnschlussIDs();
|
|
175
|
+
yield this.queryLDroselAnschlussIDs();
|
|
176
|
+
yield this.queryErsatzLaengsAnschlussIDs();
|
|
177
|
+
yield this.queryLkondensatorAnschlussIDs();
|
|
178
|
+
console.log('Convert BD Profiles');
|
|
179
|
+
for (const entry of this.exportFramesBoundary.entries()) {
|
|
180
|
+
const geoRegionUUID = entry[0];
|
|
181
|
+
const frame = entry[1];
|
|
182
|
+
const geoRegion = frame.cimModel.getGeographicalRegion(geoRegionUUID);
|
|
183
|
+
if (!geoRegion)
|
|
184
|
+
continue;
|
|
185
|
+
yield this.convertFrame(frame, geoRegion, objectMappingConfig, energyTypesConfig, defaultValuesConfig);
|
|
186
|
+
}
|
|
187
|
+
console.log('Convert MAS Profiles');
|
|
188
|
+
for (const entry of this.exportFrames.entries()) {
|
|
189
|
+
const geoRegionUUID = entry[0];
|
|
190
|
+
const frame = entry[1];
|
|
191
|
+
const geoRegion = frame.cimModel.getGeographicalRegion(geoRegionUUID);
|
|
192
|
+
if (!geoRegion)
|
|
193
|
+
continue;
|
|
194
|
+
console.log(`Convert MAS profile: ${frame.mas}`);
|
|
195
|
+
yield this.convertFrame(frame, geoRegion, objectMappingConfig, energyTypesConfig, defaultValuesConfig);
|
|
196
|
+
frame.validateCIMModel();
|
|
197
|
+
frame.purgeData();
|
|
198
|
+
const startTime = perf_hooks_1.performance.now();
|
|
199
|
+
frame.openXMLModel();
|
|
200
|
+
console.log(`Serialize MAS profile: ${frame.mas}`);
|
|
201
|
+
frame.serializeModel(defaultValuesConfig);
|
|
202
|
+
yield frame.closeXMLModel();
|
|
203
|
+
let endTime = perf_hooks_1.performance.now();
|
|
204
|
+
frame.cimModel.purgeData();
|
|
205
|
+
console.log(`\nSerializeModel ${geoRegion.name} ${(endTime - startTime) / 1000} seconds\n`);
|
|
206
|
+
}
|
|
207
|
+
console.log('Serialize BD Profiles');
|
|
208
|
+
for (const entry of this.exportFramesBoundary.entries()) {
|
|
209
|
+
const geoRegionUUID = entry[0];
|
|
210
|
+
const frame = entry[1];
|
|
211
|
+
const geoRegion = frame.cimModel.getGeographicalRegion(geoRegionUUID);
|
|
212
|
+
if (!geoRegion)
|
|
213
|
+
continue;
|
|
214
|
+
console.log('Transform MAS Profiles');
|
|
215
|
+
yield this.transformBoundaryModel(frame, [...this.exportFrames.values()]);
|
|
216
|
+
frame.validateCIMModel();
|
|
217
|
+
const startTime = perf_hooks_1.performance.now();
|
|
218
|
+
frame.openXMLModel();
|
|
219
|
+
console.log(`Serialize BD profile: ${frame.mas}`);
|
|
220
|
+
frame.serializeModel(defaultValuesConfig);
|
|
221
|
+
yield frame.closeXMLModel();
|
|
222
|
+
let endTime = perf_hooks_1.performance.now();
|
|
223
|
+
console.log(`\nSerializeModel ${geoRegion.name} ${(endTime - startTime) / 1000} seconds\n`);
|
|
224
|
+
}
|
|
225
|
+
const zip = new jszip_1.default();
|
|
226
|
+
const gridFrames = [...this.exportFrames.values(), ...this.exportFramesBoundary.values()]
|
|
227
|
+
.filter((value, index, self) => self.indexOf(value) === index);
|
|
228
|
+
for (const frame of gridFrames) {
|
|
229
|
+
for (const xmlSerializer of frame.profileXmlSerializers.values()) {
|
|
230
|
+
const readStreamEq = fs_1.default.createReadStream(xmlSerializer.filePath);
|
|
231
|
+
zip.file(`${xmlSerializer.fileName}`, readStreamEq);
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
resolve(yield utils_2.generateNodeStream(zip));
|
|
245
235
|
}));
|
|
246
236
|
});
|
|
247
237
|
}
|
|
@@ -439,6 +429,64 @@ class ConverterI7 {
|
|
|
439
429
|
startTime = perf_hooks_1.performance.now();
|
|
440
430
|
yield this.convertNetzvarianten(cimModel, integral7Modell);
|
|
441
431
|
logExecutionTime(this.logger, startTime, `convertNetzvarianten`);
|
|
432
|
+
for (const key of integral7Modell.i7SchemaID2UUID.keys()) {
|
|
433
|
+
startTime = perf_hooks_1.performance.now();
|
|
434
|
+
yield this.convertSchemaStandorte(cimModel, integral7Modell, standortIDs, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
435
|
+
logExecutionTime(this.logger, startTime, `convertSchemaStandorte`);
|
|
436
|
+
startTime = perf_hooks_1.performance.now();
|
|
437
|
+
yield this.convertSchemaKnotenSo(cimModel, integral7Modell, knotenSoIDs, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
438
|
+
logExecutionTime(this.logger, startTime, `convertSchemaKnotenSo`);
|
|
439
|
+
startTime = perf_hooks_1.performance.now();
|
|
440
|
+
logExecutionTime(this.logger, startTime, `convertSchemaHgueKnotenSo`);
|
|
441
|
+
startTime = perf_hooks_1.performance.now();
|
|
442
|
+
yield this.convertSchemaSchaltanlage(cimModel, integral7Modell, schaltanlagenIDs, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
443
|
+
logExecutionTime(this.logger, startTime, `convertSchemaSchaltanlage`);
|
|
444
|
+
startTime = perf_hooks_1.performance.now();
|
|
445
|
+
yield this.convertSchemaSchaltanlagenAbschnitte(cimModel, integral7Modell, schaltanlagenAbschnittIDs, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
446
|
+
logExecutionTime(this.logger, startTime, `convertSchemaSchaltanlagenAbschnitte`);
|
|
447
|
+
startTime = perf_hooks_1.performance.now();
|
|
448
|
+
yield this.convertSchemaSammelschienenAbschnitte(cimModel, integral7Modell, schaltanlagenAbschnittIDs, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
449
|
+
logExecutionTime(this.logger, startTime, `convertSchemaSammelschienenAbschnitte`);
|
|
450
|
+
startTime = perf_hooks_1.performance.now();
|
|
451
|
+
yield this.convertSchemaSchaltfeldElemente(cimModel, integral7Modell, schaltfeldIDs, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
452
|
+
logExecutionTime(this.logger, startTime, `convertSchemaSchaltfeldElemente`);
|
|
453
|
+
startTime = perf_hooks_1.performance.now();
|
|
454
|
+
yield this.convertSchemaQuerkupplungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
455
|
+
logExecutionTime(this.logger, startTime, `convertSchemaQuerkupplungen`);
|
|
456
|
+
startTime = perf_hooks_1.performance.now();
|
|
457
|
+
yield this.convertSchemaLaengskupplungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
458
|
+
logExecutionTime(this.logger, startTime, `convertSchemaLaengskupplungen`);
|
|
459
|
+
startTime = perf_hooks_1.performance.now();
|
|
460
|
+
yield this.convertSchemaTransformatoren2W(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
461
|
+
logExecutionTime(this.logger, startTime, `convertSchemaTransformatoren2W`);
|
|
462
|
+
startTime = perf_hooks_1.performance.now();
|
|
463
|
+
yield this.convertSchemaTransformatoren3W(cimModel, integral7Modell, standortIDs, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
464
|
+
logExecutionTime(this.logger, startTime, `convertSchemaTransformatoren3W`);
|
|
465
|
+
startTime = perf_hooks_1.performance.now();
|
|
466
|
+
yield this.convertSchemaQuerzweige(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
467
|
+
logExecutionTime(this.logger, startTime, `convertSchemaQuerzweige`);
|
|
468
|
+
startTime = perf_hooks_1.performance.now();
|
|
469
|
+
logExecutionTime(this.logger, startTime, `convertSchemaSternpunktSchiene`);
|
|
470
|
+
startTime = perf_hooks_1.performance.now();
|
|
471
|
+
logExecutionTime(this.logger, startTime, `convertSchemaSternpunktKnoten`);
|
|
472
|
+
startTime = perf_hooks_1.performance.now();
|
|
473
|
+
yield this.convertSchemaLeitungen(cimModel, integral7Modell, key, constants_1.NsgConstants.onlyEingeblendet);
|
|
474
|
+
logExecutionTime(this.logger, startTime, `convertSchemaLeitungen`);
|
|
475
|
+
integral7Modell.integralLaengskupplungen.clear();
|
|
476
|
+
integral7Modell.integralHgueLeitungen.clear();
|
|
477
|
+
integral7Modell.i7ID2UUID.clear();
|
|
478
|
+
integral7Modell.i7SchemaID2Type.clear();
|
|
479
|
+
integral7Modell.integralNSGStandorte.clear();
|
|
480
|
+
integral7Modell.integralNSGSchaltanlage.clear();
|
|
481
|
+
integral7Modell.integralNSGSchaltfeld.clear();
|
|
482
|
+
integral7Modell.integralNSGSAAbschnitt.clear();
|
|
483
|
+
integral7Modell.integralNSGSsab.clear();
|
|
484
|
+
integral7Modell.integralNSGStpSchiene.clear();
|
|
485
|
+
integral7Modell.integralNSGStpKnoten.clear();
|
|
486
|
+
integral7Modell.integralNSGTrafos.clear();
|
|
487
|
+
integral7Modell.integralNSGQuerzweig.clear();
|
|
488
|
+
integral7Modell.placedCIMObjectsForDLProfil.clear();
|
|
489
|
+
}
|
|
442
490
|
});
|
|
443
491
|
}
|
|
444
492
|
assignTerminalSequenceNumber(cimModel) {
|
|
@@ -698,8 +746,8 @@ class ConverterI7 {
|
|
|
698
746
|
if (schaltanlagenabschnittIDs.length <= 0)
|
|
699
747
|
return;
|
|
700
748
|
const isEingeblendet = 1;
|
|
701
|
-
let sqlSelectGroupedMaxSlotSf = `SELECT nsgsaa AS nsgsaa, max(slotnummer) + 1 AS laenge
|
|
702
|
-
FROM nsg_nsgschaltfeld
|
|
749
|
+
let sqlSelectGroupedMaxSlotSf = `SELECT nsgsaa AS nsgsaa, max(slotnummer) + 1 AS laenge
|
|
750
|
+
FROM nsg_nsgschaltfeld
|
|
703
751
|
WHERE ((${integral_sql_1.getWhereIDs('nsgsaa', schaltanlagenabschnittIDs).join(' OR ')}))`;
|
|
704
752
|
if (onlyEingeblendet) {
|
|
705
753
|
sqlSelectGroupedMaxSlotSf += ` AND (eingeblendet = ${isEingeblendet} OR (eingeblendet IS NULL AND angezeigt = ${isEingeblendet}))`;
|
|
@@ -707,8 +755,8 @@ class ConverterI7 {
|
|
|
707
755
|
sqlSelectGroupedMaxSlotSf += ` GROUP BY nsgsaa`;
|
|
708
756
|
const resultsMaxSlotsSf = yield this.mysqlController.execQuery(sqlSelectGroupedMaxSlotSf);
|
|
709
757
|
const mappedResultsMaxSlotsSf = new Map(resultsMaxSlotsSf.map(value => [value.nsgsaa, value.laenge]));
|
|
710
|
-
let sqlSelectGroupedMaxSlotKpF = `SELECT nsgsaa AS nsgsaa, max(slotnummer) + 1 AS laenge
|
|
711
|
-
FROM nsg_nsgkpfeld
|
|
758
|
+
let sqlSelectGroupedMaxSlotKpF = `SELECT nsgsaa AS nsgsaa, max(slotnummer) + 1 AS laenge
|
|
759
|
+
FROM nsg_nsgkpfeld
|
|
712
760
|
WHERE ((${integral_sql_1.getWhereIDs('nsgsaa', schaltanlagenabschnittIDs).join(' OR ')}))`;
|
|
713
761
|
if (onlyEingeblendet) {
|
|
714
762
|
sqlSelectGroupedMaxSlotKpF += ` AND (eingeblendet = ${isEingeblendet} OR (eingeblendet IS NULL AND angezeigt = ${isEingeblendet}))`;
|
|
@@ -716,19 +764,19 @@ class ConverterI7 {
|
|
|
716
764
|
sqlSelectGroupedMaxSlotKpF += ` GROUP BY nsgsaa`;
|
|
717
765
|
const resultsMaxSlotsKpF = yield this.mysqlController.execQuery(sqlSelectGroupedMaxSlotKpF);
|
|
718
766
|
const mappedResultsMaxSlotsKpF = new Map(resultsMaxSlotsKpF.map(value => [value.nsgsaa, value.laenge]));
|
|
719
|
-
const sqlStatement = `SELECT nsg_nsgsaab.variantennr,
|
|
720
|
-
nsg_nsgsaab.id,
|
|
721
|
-
nsg_nsgsaab.laenge AS laenge,
|
|
722
|
-
nsg_nsgsaab.nslots,
|
|
723
|
-
nsg_nsgsaab.saabschnitt,
|
|
724
|
-
nsg_nsgsaab.nsgsa,
|
|
725
|
-
nsg_nsgsaab.angezeigt,
|
|
726
|
-
nsg_nsgsaab.eingeblendet,
|
|
727
|
-
nsg_nsgsaab.nsglkp,
|
|
728
|
-
netz_ssab.pos AS posSSAB,
|
|
729
|
-
netz_ssab.id AS idSSAB
|
|
730
|
-
FROM netz_ssab
|
|
731
|
-
LEFT JOIN nsg_nsgsaabschnitt AS nsg_nsgsaab ON nsg_nsgsaab.saabschnitt = netz_ssab.saabschnitt
|
|
767
|
+
const sqlStatement = `SELECT nsg_nsgsaab.variantennr,
|
|
768
|
+
nsg_nsgsaab.id,
|
|
769
|
+
nsg_nsgsaab.laenge AS laenge,
|
|
770
|
+
nsg_nsgsaab.nslots,
|
|
771
|
+
nsg_nsgsaab.saabschnitt,
|
|
772
|
+
nsg_nsgsaab.nsgsa,
|
|
773
|
+
nsg_nsgsaab.angezeigt,
|
|
774
|
+
nsg_nsgsaab.eingeblendet,
|
|
775
|
+
nsg_nsgsaab.nsglkp,
|
|
776
|
+
netz_ssab.pos AS posSSAB,
|
|
777
|
+
netz_ssab.id AS idSSAB
|
|
778
|
+
FROM netz_ssab
|
|
779
|
+
LEFT JOIN nsg_nsgsaabschnitt AS nsg_nsgsaab ON nsg_nsgsaab.saabschnitt = netz_ssab.saabschnitt
|
|
732
780
|
WHERE (${integral_sql_1.getWhereIDs('nsg_nsgsaab.saabschnitt', schaltanlagenabschnittIDs).join(' OR ')});`;
|
|
733
781
|
const queryResults = yield this.mysqlController.execQuery(sqlStatement);
|
|
734
782
|
queryResults.forEach(value => {
|
|
@@ -738,6 +786,9 @@ class ConverterI7 {
|
|
|
738
786
|
for (const queryResult of filteredResults) {
|
|
739
787
|
const nsgSa = integral7.integralNSGSchaltanlage.get(queryResult.nsgsa);
|
|
740
788
|
const nsgSo = integral7.integralNSGStandorte.get(nsgSa.nsgsoid);
|
|
789
|
+
if (nsgSo === undefined) {
|
|
790
|
+
continue;
|
|
791
|
+
}
|
|
741
792
|
const leftOffset = queryResult.nslots * constants_1.NsgConstants.HORIZONTAL_OFFSET;
|
|
742
793
|
const topOffset = queryResult.posSSAB * constants_1.NsgConstants.VERTICAL_OFFSET;
|
|
743
794
|
const ssabLength = queryResult.laenge * constants_1.NsgConstants.HORIZONTAL_OFFSET;
|
|
@@ -788,6 +839,15 @@ class ConverterI7 {
|
|
|
788
839
|
const resultsNsgSchaltfeld = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_SCHALTFELD, schaltfeldIDs));
|
|
789
840
|
const filteredResultsNsgSchaltfeld = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultsNsgSchaltfeld, variantenNr, onlyEingeblendet);
|
|
790
841
|
for (const i7Data of filteredResultsNsgSchaltfeld) {
|
|
842
|
+
const nsgSaa = integral7.integralNSGSAAbschnitt.get(i7Data.nsgsaa);
|
|
843
|
+
const nsgSa = integral7.integralNSGSchaltanlage.get(nsgSaa.nsgsaid);
|
|
844
|
+
if (nsgSa === undefined) {
|
|
845
|
+
continue;
|
|
846
|
+
}
|
|
847
|
+
const nsgSo = integral7.integralNSGStandorte.get(nsgSa.nsgsoid);
|
|
848
|
+
if (nsgSo === undefined) {
|
|
849
|
+
continue;
|
|
850
|
+
}
|
|
791
851
|
integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_SCHALTFELD);
|
|
792
852
|
const nsgSchaltfeldObj = new SchaltfeldNsg_1.SchaltfeldNsgImpl(i7Data);
|
|
793
853
|
integral7.integralNSGSchaltfeld.set(i7Data.id, nsgSchaltfeldObj);
|
|
@@ -862,15 +922,13 @@ class ConverterI7 {
|
|
|
862
922
|
[...nodePointMap.entries()].forEach(entry => {
|
|
863
923
|
uuidPointsMap.set(this.integralID2UUID.get(entry[0]), entry[1]);
|
|
864
924
|
});
|
|
865
|
-
const nsgSaa = integral7.integralNSGSAAbschnitt.get(i7Data.nsgsaa);
|
|
866
|
-
const nsgSa = integral7.integralNSGSchaltanlage.get(nsgSaa.nsgsaid);
|
|
867
925
|
nsgSchaltfeldObj.orientation = nsgSa.ausrichtung;
|
|
868
926
|
if (i7Data.deltaausrichtung === 1) {
|
|
869
927
|
nsgSchaltfeldObj.orientation = (nsgSchaltfeldObj.orientation + 2) % 4;
|
|
870
928
|
}
|
|
871
929
|
uuidPointsMap.forEach((entryDiagramObject, key) => {
|
|
872
930
|
if (!(entryDiagramObject.identifiedObject instanceof Terminal_1.Terminal || entryDiagramObject.identifiedObject instanceof ConnectivityNode_1.ConnectivityNode)) {
|
|
873
|
-
entryDiagramObject.rotation
|
|
931
|
+
entryDiagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSaNsgSf(nsgSa.ausrichtung, schaltfeldDeltaausrichtung);
|
|
874
932
|
}
|
|
875
933
|
});
|
|
876
934
|
util_functions_1.DLUtilFunctions.rotateShiftAddBasedOnNsgSAA(cimModel, integral7, variantenNr, i7Data.nsgsaa, uuidPointsMap, true);
|
|
@@ -905,7 +963,8 @@ class ConverterI7 {
|
|
|
905
963
|
const nsgSa = integral7.integralNSGSchaltanlage.get(nsgSaa.nsgsaid);
|
|
906
964
|
uuidPointsMap.forEach((entryDiagramObject, key) => {
|
|
907
965
|
if (!(entryDiagramObject.identifiedObject instanceof Terminal_1.Terminal || entryDiagramObject.identifiedObject instanceof ConnectivityNode_1.ConnectivityNode)) {
|
|
908
|
-
entryDiagramObject.rotation += util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSa.ausrichtung);
|
|
966
|
+
entryDiagramObject.rotation += (util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSa.ausrichtung) - 90 + 720);
|
|
967
|
+
entryDiagramObject.rotation = entryDiagramObject.rotation % 360;
|
|
909
968
|
}
|
|
910
969
|
});
|
|
911
970
|
util_functions_1.DLUtilFunctions.rotateShiftAddBasedOnNsgSAA(cimModel, integral7, variantenNr, i7Data.nsgsaa, uuidPointsMap, true);
|
|
@@ -915,7 +974,8 @@ class ConverterI7 {
|
|
|
915
974
|
}
|
|
916
975
|
convertSchemaLaengskupplungen(cimModel, integral7, variantenNr, onlyEingeblendet = true) {
|
|
917
976
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
918
|
-
|
|
977
|
+
const ssabIDs = [...integral7.integralNSGSAAbschnitt.keys()];
|
|
978
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG) && integral7.laengskupplungIDs.length > 0 && ssabIDs.length > 0) {
|
|
919
979
|
const i7relevantTables = [
|
|
920
980
|
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LEISTUNGSSCHALTER],
|
|
921
981
|
integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRENNER_3P],
|
|
@@ -924,7 +984,7 @@ class ConverterI7 {
|
|
|
924
984
|
];
|
|
925
985
|
const i7checkedTables = this.filterTablesByAvailability(i7relevantTables);
|
|
926
986
|
const i7knotenBeziehungen = yield this.mysqlController.execQuery(integral_sql_1.getI7KnotenBeziehungenQuery(i7checkedTables, integral7.laengskupplungIDs));
|
|
927
|
-
const resultsNsgLKupplung = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LAENGSKUPPLUNG,
|
|
987
|
+
const resultsNsgLKupplung = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LAENGSKUPPLUNG, ssabIDs));
|
|
928
988
|
const filteredResultsNsgLKupplung = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(resultsNsgLKupplung, variantenNr, onlyEingeblendet);
|
|
929
989
|
for (const i7Data of filteredResultsNsgLKupplung) {
|
|
930
990
|
integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_LAENGSKUPPLUNG);
|
|
@@ -941,7 +1001,12 @@ class ConverterI7 {
|
|
|
941
1001
|
const nsgSa = integral7.integralNSGSchaltanlage.get(nsgSaa.nsgsaid);
|
|
942
1002
|
uuidPointsMap.forEach((entryDiagramObject, key) => {
|
|
943
1003
|
if (!(entryDiagramObject.identifiedObject instanceof Terminal_1.Terminal || entryDiagramObject.identifiedObject instanceof ConnectivityNode_1.ConnectivityNode)) {
|
|
944
|
-
entryDiagramObject.rotation
|
|
1004
|
+
if (entryDiagramObject.rotation === undefined) {
|
|
1005
|
+
entryDiagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSa.ausrichtung);
|
|
1006
|
+
}
|
|
1007
|
+
else {
|
|
1008
|
+
entryDiagramObject.rotation += util_functions_1.DLUtilFunctions.getRotationBasedOnNsgSa(nsgSa.ausrichtung);
|
|
1009
|
+
}
|
|
945
1010
|
}
|
|
946
1011
|
});
|
|
947
1012
|
util_functions_1.DLUtilFunctions.rotateShiftAddBasedOnNsgSAA(cimModel, integral7, variantenNr, i7Data.nsgsaa, uuidPointsMap);
|
|
@@ -951,69 +1016,74 @@ class ConverterI7 {
|
|
|
951
1016
|
}
|
|
952
1017
|
convertSchemaTransformatoren2W(cimModel, integral7, variantenNr, onlyEingeblendet = true) {
|
|
953
1018
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
|
|
957
|
-
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
961
|
-
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
968
|
-
|
|
969
|
-
|
|
970
|
-
|
|
971
|
-
|
|
972
|
-
|
|
973
|
-
|
|
974
|
-
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
|
|
983
|
-
|
|
984
|
-
|
|
985
|
-
|
|
986
|
-
|
|
987
|
-
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
|
|
991
|
-
|
|
992
|
-
|
|
993
|
-
|
|
994
|
-
|
|
995
|
-
|
|
996
|
-
|
|
997
|
-
|
|
998
|
-
|
|
999
|
-
|
|
1000
|
-
|
|
1001
|
-
|
|
1002
|
-
if (
|
|
1003
|
-
|
|
1004
|
-
|
|
1005
|
-
|
|
1006
|
-
|
|
1007
|
-
|
|
1008
|
-
|
|
1009
|
-
|
|
1010
|
-
|
|
1011
|
-
|
|
1019
|
+
try {
|
|
1020
|
+
const nsgStandortIDs = [...integral7.integralNSGStandorte.keys()];
|
|
1021
|
+
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_TRAFO2W) && nsgStandortIDs.length > 0) {
|
|
1022
|
+
const results = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_TRAFO2W, nsgStandortIDs));
|
|
1023
|
+
let filteredResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(results, variantenNr, onlyEingeblendet);
|
|
1024
|
+
for (const i7Data of filteredResults) {
|
|
1025
|
+
integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_TRAFO2W);
|
|
1026
|
+
const uuidPointsMap = new Map();
|
|
1027
|
+
const trafo2wNsg = new Trafo2wNsg_1.Trafo2wNsgImpl(i7Data);
|
|
1028
|
+
integral7.integralNSGTrafos.set(i7Data.trafo2w, trafo2wNsg);
|
|
1029
|
+
const trafoDiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(constants_1.NsgConstants.TRAFO2W_WIDTH / 2, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
|
|
1030
|
+
trafoDiagramObject.rotation = util_functions_1.DLUtilFunctions.getRotationBasedOnTrafo2W(trafo2wNsg.ausrichtung);
|
|
1031
|
+
const tempPoints = [];
|
|
1032
|
+
tempPoints.push(trafoDiagramObject.diagramObjectPoints[0]);
|
|
1033
|
+
const trafoUUID = this.integralID2UUID.get(trafo2wNsg.trafo2wid);
|
|
1034
|
+
const transformer = cimModel.getPowerTransformer(trafoUUID);
|
|
1035
|
+
const terminal1 = transformer.powerTransformerEnds[0].terminal;
|
|
1036
|
+
const terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(0, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
|
|
1037
|
+
tempPoints.push(terminal1DiagramObject.diagramObjectPoints[0]);
|
|
1038
|
+
const terminal2 = transformer.powerTransformerEnds[1].terminal;
|
|
1039
|
+
const terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(constants_1.NsgConstants.TRAFO2W_WIDTH, constants_1.NsgConstants.TRAFO2W_HEIGHT / 2);
|
|
1040
|
+
tempPoints.push(terminal2DiagramObject.diagramObjectPoints[0]);
|
|
1041
|
+
for (const p of tempPoints) {
|
|
1042
|
+
util_functions_1.DLUtilFunctions.rotateDiagramObjectPoint(p, 360 - (90 * trafo2wNsg.ausrichtung) % 360);
|
|
1043
|
+
p.xPosition += trafo2wNsg.xrel;
|
|
1044
|
+
p.yPosition += trafo2wNsg.yrel;
|
|
1045
|
+
p.xPosition += (trafo2wNsg.ausrichtung === 1 ? constants_1.NsgConstants.TRAFO2W_HEIGHT : 0);
|
|
1046
|
+
p.xPosition += (trafo2wNsg.ausrichtung === 2 ? constants_1.NsgConstants.TRAFO2W_WIDTH : 0);
|
|
1047
|
+
p.yPosition += (trafo2wNsg.ausrichtung === 2 ? constants_1.NsgConstants.TRAFO2W_HEIGHT : 0);
|
|
1048
|
+
p.yPosition += (trafo2wNsg.ausrichtung === 3 ? constants_1.NsgConstants.TRAFO2W_WIDTH : 0);
|
|
1049
|
+
}
|
|
1050
|
+
uuidPointsMap.set(this.integralID2UUID.get(trafo2wNsg.trafo2wid), trafoDiagramObject);
|
|
1051
|
+
if (terminal1 !== undefined) {
|
|
1052
|
+
uuidPointsMap.set(terminal1.getUUID(), terminal1DiagramObject);
|
|
1053
|
+
}
|
|
1054
|
+
if (terminal2 !== undefined) {
|
|
1055
|
+
uuidPointsMap.set(terminal2.getUUID(), terminal2DiagramObject);
|
|
1056
|
+
}
|
|
1057
|
+
util_functions_1.DLUtilFunctions.shiftAddBasedOnNsgSo(cimModel, integral7, variantenNr, trafo2wNsg.nsgsoid, uuidPointsMap);
|
|
1058
|
+
let t1CNdiagramObject, t1DiagramObject, t2CNdiagramObject, t2DiagramObject;
|
|
1059
|
+
if (terminal1 !== undefined) {
|
|
1060
|
+
t1CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.connectivityNode.getUUID());
|
|
1061
|
+
t1DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal1.getUUID());
|
|
1062
|
+
}
|
|
1063
|
+
if (terminal2 !== undefined) {
|
|
1064
|
+
t2CNdiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.connectivityNode.getUUID());
|
|
1065
|
+
t2DiagramObject = integral7.placedCIMObjectsForDLProfil.get(terminal2.getUUID());
|
|
1066
|
+
}
|
|
1067
|
+
if (trafo2wNsg.ausrichtung === 2 || trafo2wNsg.ausrichtung === 3) {
|
|
1068
|
+
if (terminal2 !== undefined && t1CNdiagramObject !== undefined)
|
|
1069
|
+
utils_schema_1.copyDiagramObjectPoints(t2DiagramObject, t1CNdiagramObject.diagramObjectPoints);
|
|
1070
|
+
if (terminal1 !== undefined && t2CNdiagramObject !== undefined)
|
|
1071
|
+
utils_schema_1.copyDiagramObjectPoints(t1DiagramObject, t2CNdiagramObject.diagramObjectPoints);
|
|
1072
|
+
}
|
|
1073
|
+
else {
|
|
1074
|
+
if (terminal1 !== undefined && t1CNdiagramObject !== undefined)
|
|
1075
|
+
utils_schema_1.copyDiagramObjectPoints(t1DiagramObject, t1CNdiagramObject.diagramObjectPoints);
|
|
1076
|
+
if (terminal2 !== undefined && t2CNdiagramObject !== undefined)
|
|
1077
|
+
utils_schema_1.copyDiagramObjectPoints(t2DiagramObject, t2CNdiagramObject.diagramObjectPoints);
|
|
1078
|
+
}
|
|
1012
1079
|
}
|
|
1013
1080
|
}
|
|
1081
|
+
else {
|
|
1082
|
+
this.logger.debug(`Tabelle ${integral_sql_1.Integral7TableNames.NSG_TRAFO2W} ist nicht vorhanden.`);
|
|
1083
|
+
}
|
|
1014
1084
|
}
|
|
1015
|
-
|
|
1016
|
-
|
|
1085
|
+
catch (err) {
|
|
1086
|
+
console.log(err);
|
|
1017
1087
|
}
|
|
1018
1088
|
});
|
|
1019
1089
|
}
|
|
@@ -1035,6 +1105,8 @@ class ConverterI7 {
|
|
|
1035
1105
|
const tempPoints = [];
|
|
1036
1106
|
tempPoints.push(trafoDiagramObject.diagramObjectPoints[0]);
|
|
1037
1107
|
const trafo3wNetz = netzTrafos.get(trafo3wNsg.trafo3wid);
|
|
1108
|
+
if (trafo3wNetz === undefined)
|
|
1109
|
+
continue;
|
|
1038
1110
|
const pteW1 = cimModel.getPowerTransformerEnd(this.integralID2UUID.get(trafo3wNetz.trafowicklung3w1));
|
|
1039
1111
|
const pteW2 = cimModel.getPowerTransformerEnd(this.integralID2UUID.get(trafo3wNetz.trafowicklung3w2));
|
|
1040
1112
|
const pteW3 = cimModel.getPowerTransformerEnd(this.integralID2UUID.get(trafo3wNetz.trafowicklung3w3));
|
|
@@ -1105,7 +1177,7 @@ class ConverterI7 {
|
|
|
1105
1177
|
});
|
|
1106
1178
|
}
|
|
1107
1179
|
convertSchemaLeitungen(cimModel, integral7, variantenNr, onlyEingeblendet = true) {
|
|
1108
|
-
var _a, _b
|
|
1180
|
+
var _a, _b;
|
|
1109
1181
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
1110
1182
|
const leitungIDs = [...integral7.integralLeitungen.keys(), ...integral7.integralHgueLeitungen.keys()];
|
|
1111
1183
|
if (this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LEITUNG) && this.isTableAvailable(integral_sql_1.Integral7TableNames.NSG_LEITUNGSPUNKT)
|
|
@@ -1113,198 +1185,203 @@ class ConverterI7 {
|
|
|
1113
1185
|
const leitungResults = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LEITUNG, leitungIDs));
|
|
1114
1186
|
let filteredLeitungResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(leitungResults, variantenNr, onlyEingeblendet);
|
|
1115
1187
|
const nsgLeitungIDs = filteredLeitungResults.map(elem => elem.id);
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) {
|
|
1145
|
-
tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(integral7.i7ID2UUID.get(i7Data.anschlussanf));
|
|
1146
|
-
}
|
|
1147
|
-
else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) {
|
|
1148
|
-
tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(aKnotenCimObjectUUID);
|
|
1149
|
-
}
|
|
1150
|
-
else {
|
|
1151
|
-
}
|
|
1152
|
-
if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
|
|
1153
|
-
const anfSchaltfeld = integral7.integralNSGSchaltfeld.get(i7Data.anschlussend);
|
|
1154
|
-
tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(anfSchaltfeld.lastNodeCimUUID);
|
|
1155
|
-
}
|
|
1156
|
-
else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
|
|
1157
|
-
tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(eKnotenCimObjectUUID);
|
|
1158
|
-
}
|
|
1159
|
-
else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) {
|
|
1160
|
-
tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(integral7.i7ID2UUID.get(i7Data.anschlussend));
|
|
1161
|
-
}
|
|
1162
|
-
else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) {
|
|
1163
|
-
tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(eKnotenCimObjectUUID);
|
|
1164
|
-
}
|
|
1165
|
-
else {
|
|
1166
|
-
}
|
|
1167
|
-
if (tempAnfDiagramObject === undefined || tempEndDiagramObject === undefined)
|
|
1168
|
-
continue;
|
|
1169
|
-
tempDiagramObjectPoints.push(new DiagramObjectPoint_1.DiagramObjectPoint(tempAnfDiagramObject.diagramObjectPoints[0].xPosition, tempAnfDiagramObject.diagramObjectPoints[0].yPosition));
|
|
1170
|
-
const relevantLeitungspkts = filteredLeitungspktResults.filter(elem => elem.nsgleitung === i7Data.id).sort((a, b) => a.pos - b.pos);
|
|
1171
|
-
for (let a = 0; a < relevantLeitungspkts.length; a++) {
|
|
1172
|
-
const nsgLeitungspkt = relevantLeitungspkts[a];
|
|
1173
|
-
if (nsgLeitungspkt.userelpos === 1 && nsgLeitungspkt.reltoanf === 1) {
|
|
1174
|
-
const tempDiagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempAnfDiagramObject.diagramObjectPoints[0].xPosition, tempAnfDiagramObject.diagramObjectPoints[0].yPosition);
|
|
1175
|
-
const tempOffsetArray = util_functions_1.DLUtilFunctions.getXYOffsetFromRelCM(anfSchemaType, integral7, i7Data.anschlussanf, nsgLeitungspkt);
|
|
1176
|
-
tempDiagramObjectPoint.xPosition += tempOffsetArray[0];
|
|
1177
|
-
tempDiagramObjectPoint.yPosition += tempOffsetArray[1];
|
|
1178
|
-
tempDiagramObjectPoints.push(tempDiagramObjectPoint);
|
|
1188
|
+
if (nsgLeitungIDs.length > 0) {
|
|
1189
|
+
const leitungspktResults = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(integral_sql_1.I7Objects.NSG_LEITUNGSPUNKT, nsgLeitungIDs));
|
|
1190
|
+
let filteredLeitungspktResults = util_functions_1.DLUtilFunctions.filterByVariantenNrOnlyEingeblendet(leitungspktResults, variantenNr, onlyEingeblendet);
|
|
1191
|
+
for (const i7Data of filteredLeitungResults) {
|
|
1192
|
+
integral7.i7SchemaID2Type.set(i7Data.id, integral_sql_1.Integral7TableNames.NSG_LEITUNG);
|
|
1193
|
+
let netzLeitung, aKnotenCimObjectUUID, eKnotenCimObjectUUID;
|
|
1194
|
+
const isACLine = integral7.integralLeitungen.get(i7Data.leitung);
|
|
1195
|
+
if (isACLine) {
|
|
1196
|
+
netzLeitung = integral7.integralLeitungen.get(i7Data.leitung);
|
|
1197
|
+
aKnotenCimObjectUUID = this.integralID2UUID.get(netzLeitung.aknotenid);
|
|
1198
|
+
eKnotenCimObjectUUID = this.integralID2UUID.get(netzLeitung.eknotenid);
|
|
1199
|
+
}
|
|
1200
|
+
else {
|
|
1201
|
+
netzLeitung = integral7.integralHgueLeitungen.get(i7Data.leitung);
|
|
1202
|
+
aKnotenCimObjectUUID = this.integralID2UUID.get(netzLeitung.anetzobjekt);
|
|
1203
|
+
eKnotenCimObjectUUID = this.integralID2UUID.get(netzLeitung.enetzobjekt);
|
|
1204
|
+
}
|
|
1205
|
+
const anfSchemaType = integral7.i7SchemaID2Type.get(i7Data.anschlussanf);
|
|
1206
|
+
const endSchemaType = integral7.i7SchemaID2Type.get(i7Data.anschlussend);
|
|
1207
|
+
let tempDiagramObjectPoints = [];
|
|
1208
|
+
let tempAnfDiagramObject = undefined;
|
|
1209
|
+
let tempEndDiagramObject = undefined;
|
|
1210
|
+
if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
|
|
1211
|
+
const anfSchaltfeld = integral7.integralNSGSchaltfeld.get(i7Data.anschlussanf);
|
|
1212
|
+
tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(anfSchaltfeld.lastNodeCimUUID);
|
|
1213
|
+
}
|
|
1214
|
+
else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
|
|
1215
|
+
tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(aKnotenCimObjectUUID);
|
|
1179
1216
|
}
|
|
1180
|
-
else if (
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
tempDiagramObjectPoints.push(tempDiagramObjectPoint);
|
|
1217
|
+
else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) {
|
|
1218
|
+
tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(integral7.i7ID2UUID.get(i7Data.anschlussanf));
|
|
1219
|
+
}
|
|
1220
|
+
else if (anfSchemaType === integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) {
|
|
1221
|
+
tempAnfDiagramObject = integral7.placedCIMObjectsForDLProfil.get(aKnotenCimObjectUUID);
|
|
1186
1222
|
}
|
|
1187
1223
|
else {
|
|
1188
|
-
|
|
1224
|
+
this.logger.info(`nsg-line with a unknown/unhandled start reference-point (i7-NetzLeitungID ${netzLeitung.id}, i7-aKnotenID: ${netzLeitung.aknotenid})`);
|
|
1225
|
+
continue;
|
|
1189
1226
|
}
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
const diagram = cimModel.getDiagram(diagramUUID);
|
|
1194
|
-
if (isACLine) {
|
|
1195
|
-
const netzLeitungCimObj = cimModel.getLine(this.integralID2UUID.get(netzLeitung.id));
|
|
1196
|
-
const cableAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.KABEL);
|
|
1197
|
-
const overheadAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.FREILEITUNG);
|
|
1198
|
-
let type = integral_sql_1.I7Objects.STROMKREISABSCHNITT;
|
|
1199
|
-
if (cableAvailable && overheadAvailable) {
|
|
1200
|
-
type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL_FREILEITUNG;
|
|
1227
|
+
if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_SCHALTFELD) {
|
|
1228
|
+
const anfSchaltfeld = integral7.integralNSGSchaltfeld.get(i7Data.anschlussend);
|
|
1229
|
+
tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(anfSchaltfeld.lastNodeCimUUID);
|
|
1201
1230
|
}
|
|
1202
|
-
else if (
|
|
1203
|
-
|
|
1231
|
+
else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_SO) {
|
|
1232
|
+
tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(eKnotenCimObjectUUID);
|
|
1204
1233
|
}
|
|
1205
|
-
else if (
|
|
1206
|
-
|
|
1234
|
+
else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_KNOTEN_HGUE) {
|
|
1235
|
+
tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(integral7.i7ID2UUID.get(i7Data.anschlussend));
|
|
1207
1236
|
}
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
const acSegmentPercentages = [];
|
|
1211
|
-
let completeLength = 0;
|
|
1212
|
-
for (let a = 0; a < leitungStromkreisabschnitt.length; ++a) {
|
|
1213
|
-
completeLength += leitungStromkreisabschnitt[a].laenge;
|
|
1237
|
+
else if (endSchemaType === integral_sql_1.Integral7TableNames.NSG_QUERZWEIG) {
|
|
1238
|
+
tempEndDiagramObject = integral7.placedCIMObjectsForDLProfil.get(eKnotenCimObjectUUID);
|
|
1214
1239
|
}
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
acSegmentPercentages.push(crtLength / completeLength);
|
|
1240
|
+
else {
|
|
1241
|
+
this.logger.info(`nsg-line with a unknown/unhandled end reference-point (i7-NetzLeitungID ${netzLeitung.id}, i7-eKnotenID: ${netzLeitung.eknotenid})`);
|
|
1242
|
+
continue;
|
|
1219
1243
|
}
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1244
|
+
if (tempAnfDiagramObject === undefined || tempEndDiagramObject === undefined)
|
|
1245
|
+
continue;
|
|
1246
|
+
tempDiagramObjectPoints.push(new DiagramObjectPoint_1.DiagramObjectPoint(tempAnfDiagramObject.diagramObjectPoints[0].xPosition, tempAnfDiagramObject.diagramObjectPoints[0].yPosition));
|
|
1247
|
+
const relevantLeitungspkts = filteredLeitungspktResults.filter(elem => elem.nsgleitung === i7Data.id).sort((a, b) => a.pos - b.pos);
|
|
1248
|
+
for (let a = 0; a < relevantLeitungspkts.length; a++) {
|
|
1249
|
+
const nsgLeitungspkt = relevantLeitungspkts[a];
|
|
1250
|
+
if (nsgLeitungspkt.userelpos === 1 && nsgLeitungspkt.reltoanf === 1) {
|
|
1251
|
+
const tempDiagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempAnfDiagramObject.diagramObjectPoints[0].xPosition, tempAnfDiagramObject.diagramObjectPoints[0].yPosition);
|
|
1252
|
+
const tempOffsetArray = util_functions_1.DLUtilFunctions.getXYOffsetFromRelCM(anfSchemaType, integral7, i7Data.anschlussanf, nsgLeitungspkt);
|
|
1253
|
+
tempDiagramObjectPoint.xPosition += tempOffsetArray[0];
|
|
1254
|
+
tempDiagramObjectPoint.yPosition += tempOffsetArray[1];
|
|
1255
|
+
tempDiagramObjectPoints.push(tempDiagramObjectPoint);
|
|
1256
|
+
}
|
|
1257
|
+
else if (nsgLeitungspkt.userelpos === 1 && nsgLeitungspkt.reltoanf === 0) {
|
|
1258
|
+
const tempDiagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempEndDiagramObject.diagramObjectPoints[0].xPosition, tempEndDiagramObject.diagramObjectPoints[0].yPosition);
|
|
1259
|
+
const tempOffsetArray = util_functions_1.DLUtilFunctions.getXYOffsetFromRelCM(endSchemaType, integral7, i7Data.anschlussend, nsgLeitungspkt);
|
|
1260
|
+
tempDiagramObjectPoint.xPosition += tempOffsetArray[0];
|
|
1261
|
+
tempDiagramObjectPoint.yPosition += tempOffsetArray[1];
|
|
1262
|
+
tempDiagramObjectPoints.push(tempDiagramObjectPoint);
|
|
1263
|
+
}
|
|
1264
|
+
else {
|
|
1265
|
+
tempDiagramObjectPoints.push(new DiagramObjectPoint_1.DiagramObjectPoint(nsgLeitungspkt.xrel, nsgLeitungspkt.yrel));
|
|
1266
|
+
}
|
|
1225
1267
|
}
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
lastPixelPercentageSize = crtPixelPercentageSize;
|
|
1237
|
-
crtPixelPercentageSize = (crtPixelLength / completePixelLength);
|
|
1238
|
-
b++;
|
|
1239
|
-
} while (crtPixelPercentageSize < acSegmentPercentages[a] && b < tempDiagramObjectPoints.length);
|
|
1240
|
-
const epsilon = 0.00001;
|
|
1241
|
-
if ((crtPixelLength / completePixelLength) <= acSegmentPercentages[a] + epsilon) {
|
|
1242
|
-
const conductorCimObj = netzLeitungCimObj.equipments[a];
|
|
1243
|
-
const diagramObject = new DiagramObject_1.DiagramObject(utils_1.generateUUID(), 'DiagramObj ' + ((_a = conductorCimObj.shortName) !== null && _a !== void 0 ? _a : ''));
|
|
1244
|
-
diagramObject.setIdentifiedObject(conductorCimObj);
|
|
1245
|
-
diagramObject.setDiagram(diagram);
|
|
1246
|
-
diagram.addDiagramObject(diagramObject);
|
|
1247
|
-
let i = 1;
|
|
1248
|
-
for (let idx = lastB; idx < b; ++idx) {
|
|
1249
|
-
const diagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempDiagramObjectPoints[idx].xPosition, tempDiagramObjectPoints[idx].yPosition, i);
|
|
1250
|
-
diagramObjectPoint.mrid = utils_1.generateUUID();
|
|
1251
|
-
diagramObjectPoint.diagramObject = diagramObject;
|
|
1252
|
-
diagramObject.addDiagramObjectPoint(diagramObjectPoint);
|
|
1253
|
-
++i;
|
|
1254
|
-
}
|
|
1268
|
+
tempDiagramObjectPoints.push(new DiagramObjectPoint_1.DiagramObjectPoint(tempEndDiagramObject.diagramObjectPoints[0].xPosition, tempEndDiagramObject.diagramObjectPoints[0].yPosition));
|
|
1269
|
+
const diagramUUID = integral7.i7SchemaID2UUID.get(i7Data.variantennr);
|
|
1270
|
+
const diagram = cimModel.getDiagram(diagramUUID);
|
|
1271
|
+
if (isACLine) {
|
|
1272
|
+
const netzLeitungCimObj = cimModel.getLine(this.integralID2UUID.get(netzLeitung.id));
|
|
1273
|
+
const cableAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.KABEL);
|
|
1274
|
+
const overheadAvailable = this.isTableAvailable(integral_sql_1.Integral7TableNames.FREILEITUNG);
|
|
1275
|
+
let type = integral_sql_1.I7Objects.STROMKREISABSCHNITT;
|
|
1276
|
+
if (cableAvailable && overheadAvailable) {
|
|
1277
|
+
type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL_FREILEITUNG;
|
|
1255
1278
|
}
|
|
1256
|
-
else if (
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1268
|
-
|
|
1269
|
-
|
|
1270
|
-
|
|
1271
|
-
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
+
else if (cableAvailable) {
|
|
1280
|
+
type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_KABEL;
|
|
1281
|
+
}
|
|
1282
|
+
else if (overheadAvailable) {
|
|
1283
|
+
type = integral_sql_1.I7Objects.STROMKREISABSCHNITT_FREILEITUNG;
|
|
1284
|
+
}
|
|
1285
|
+
const leitungStromkreisabschnitt = yield this.mysqlController.execQuery(integral_sql_1.getI7Query(type, [netzLeitung.id]));
|
|
1286
|
+
leitungStromkreisabschnitt.sort((a, b) => a.pos - b.pos);
|
|
1287
|
+
const acSegmentPercentages = [];
|
|
1288
|
+
let completeLength = 0;
|
|
1289
|
+
for (let a = 0; a < leitungStromkreisabschnitt.length; ++a) {
|
|
1290
|
+
completeLength += leitungStromkreisabschnitt[a].laenge;
|
|
1291
|
+
}
|
|
1292
|
+
let crtLength = 0;
|
|
1293
|
+
for (let a = 0; a < leitungStromkreisabschnitt.length; ++a) {
|
|
1294
|
+
crtLength += leitungStromkreisabschnitt[a].laenge;
|
|
1295
|
+
acSegmentPercentages.push(crtLength / completeLength);
|
|
1296
|
+
}
|
|
1297
|
+
let completePixelLength = 0;
|
|
1298
|
+
for (let a = 1; a < tempDiagramObjectPoints.length; ++a) {
|
|
1299
|
+
const tempX = tempDiagramObjectPoints[a].xPosition - tempDiagramObjectPoints[a - 1].xPosition;
|
|
1300
|
+
const tempY = tempDiagramObjectPoints[a].yPosition - tempDiagramObjectPoints[a - 1].yPosition;
|
|
1301
|
+
completePixelLength += Math.sqrt((tempX * tempX) + (tempY * tempY));
|
|
1302
|
+
}
|
|
1303
|
+
let lastB = 0;
|
|
1304
|
+
let b = 1;
|
|
1305
|
+
let crtPixelLength = 0;
|
|
1306
|
+
for (let eqIdx = 0; eqIdx < acSegmentPercentages.length; ++eqIdx) {
|
|
1307
|
+
let crtPixelPercentageSize = 0;
|
|
1308
|
+
let lastPixelPercentageSize;
|
|
1309
|
+
const epsilon = 0.00001;
|
|
1310
|
+
do {
|
|
1311
|
+
const tempX = tempDiagramObjectPoints[b].xPosition - tempDiagramObjectPoints[b - 1].xPosition;
|
|
1312
|
+
const tempY = tempDiagramObjectPoints[b].yPosition - tempDiagramObjectPoints[b - 1].yPosition;
|
|
1313
|
+
crtPixelLength += Math.sqrt((tempX * tempX) + (tempY * tempY));
|
|
1314
|
+
lastPixelPercentageSize = crtPixelPercentageSize;
|
|
1315
|
+
crtPixelPercentageSize = (crtPixelLength / completePixelLength);
|
|
1279
1316
|
b++;
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
diagramObject.
|
|
1285
|
-
|
|
1317
|
+
} while (crtPixelPercentageSize < acSegmentPercentages[eqIdx] + epsilon && b < tempDiagramObjectPoints.length);
|
|
1318
|
+
if ((crtPixelLength / completePixelLength) <= acSegmentPercentages[eqIdx] + epsilon) {
|
|
1319
|
+
const conductorCimObj = netzLeitungCimObj.equipments[eqIdx];
|
|
1320
|
+
const diagramObject = new DiagramObject_1.DiagramObject(utils_1.generateUUID(), 'DiagramObject');
|
|
1321
|
+
diagramObject.setIdentifiedObject(conductorCimObj);
|
|
1322
|
+
diagramObject.setDiagram(diagram);
|
|
1323
|
+
diagram.addDiagramObject(diagramObject);
|
|
1324
|
+
let i = 1;
|
|
1325
|
+
for (let idx = lastB; idx < b; ++idx) {
|
|
1326
|
+
const diagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempDiagramObjectPoints[idx].xPosition, tempDiagramObjectPoints[idx].yPosition, i);
|
|
1327
|
+
diagramObjectPoint.mrid = utils_1.generateUUID();
|
|
1328
|
+
diagramObjectPoint.diagramObject = diagramObject;
|
|
1329
|
+
diagramObject.addDiagramObjectPoint(diagramObjectPoint);
|
|
1330
|
+
++i;
|
|
1331
|
+
}
|
|
1332
|
+
}
|
|
1333
|
+
else if ((crtPixelLength / completePixelLength) > acSegmentPercentages[eqIdx]) {
|
|
1334
|
+
let decreased = false;
|
|
1335
|
+
if (b === tempDiagramObjectPoints.length) {
|
|
1336
|
+
b--;
|
|
1337
|
+
decreased = true;
|
|
1338
|
+
}
|
|
1339
|
+
let tempX = tempDiagramObjectPoints[b].xPosition - tempDiagramObjectPoints[b - 1].xPosition;
|
|
1340
|
+
let tempY = tempDiagramObjectPoints[b].yPosition - tempDiagramObjectPoints[b - 1].yPosition;
|
|
1341
|
+
const percentageOfSegment = crtPixelPercentageSize - lastPixelPercentageSize;
|
|
1342
|
+
const tempRestX = tempX * (1 - percentageOfSegment);
|
|
1343
|
+
const tempRestY = tempY * (1 - percentageOfSegment);
|
|
1344
|
+
tempX = tempX * percentageOfSegment;
|
|
1345
|
+
tempY = tempY * percentageOfSegment;
|
|
1346
|
+
const newDiagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempDiagramObjectPoints[b - 1].xPosition + tempX, tempDiagramObjectPoints[b - 1].yPosition + tempY);
|
|
1347
|
+
tempDiagramObjectPoints.splice(b, 0, newDiagramObjectPoint);
|
|
1348
|
+
const conductorCimObj = netzLeitungCimObj.equipments[eqIdx];
|
|
1349
|
+
const diagramObject = new DiagramObject_1.DiagramObject(utils_1.generateUUID(), 'DiagramObj ' + ((_a = conductorCimObj.shortName) !== null && _a !== void 0 ? _a : ''));
|
|
1350
|
+
diagramObject.setDiagram(diagram);
|
|
1351
|
+
diagramObject.setIdentifiedObject(conductorCimObj);
|
|
1352
|
+
diagram.addDiagramObject(diagramObject);
|
|
1353
|
+
let i = 1;
|
|
1354
|
+
if (decreased)
|
|
1355
|
+
b++;
|
|
1356
|
+
for (let idx = lastB; idx < b; ++idx) {
|
|
1357
|
+
const diagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempDiagramObjectPoints[idx].xPosition, tempDiagramObjectPoints[idx].yPosition, i);
|
|
1358
|
+
diagramObjectPoint.mrid = utils_1.generateUUID();
|
|
1359
|
+
diagramObjectPoint.diagramObject = diagramObject;
|
|
1360
|
+
diagramObject.addDiagramObjectPoint(diagramObjectPoint);
|
|
1361
|
+
++i;
|
|
1362
|
+
}
|
|
1286
1363
|
}
|
|
1364
|
+
lastB = b - 1;
|
|
1287
1365
|
}
|
|
1288
|
-
lastB = b - 1;
|
|
1289
|
-
}
|
|
1290
|
-
}
|
|
1291
|
-
else {
|
|
1292
|
-
const netzLeitungCimObj = cimModel.getObject(this.integralID2UUID.get(netzLeitung.id));
|
|
1293
|
-
const diagramObject = new DiagramObject_1.DiagramObject(utils_1.generateUUID());
|
|
1294
|
-
diagramObject.setDiagram(diagram);
|
|
1295
|
-
diagram.addDiagramObject(diagramObject);
|
|
1296
|
-
diagramObject.setIdentifiedObjectUUID(this.integralID2UUID.get(netzLeitung.id));
|
|
1297
|
-
if (netzLeitungCimObj !== undefined) {
|
|
1298
|
-
diagramObject.name = 'DiagramObj ' + ((_c = netzLeitungCimObj.shortName) !== null && _c !== void 0 ? _c : '');
|
|
1299
1366
|
}
|
|
1300
1367
|
else {
|
|
1301
|
-
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1368
|
+
const netzLeitungCimObj = cimModel.getObject(this.integralID2UUID.get(netzLeitung.id));
|
|
1369
|
+
const diagramObject = new DiagramObject_1.DiagramObject(utils_1.generateUUID());
|
|
1370
|
+
diagramObject.setDiagram(diagram);
|
|
1371
|
+
diagram.addDiagramObject(diagramObject);
|
|
1372
|
+
diagramObject.setIdentifiedObjectUUID(this.integralID2UUID.get(netzLeitung.id));
|
|
1373
|
+
if (netzLeitungCimObj !== undefined) {
|
|
1374
|
+
diagramObject.name = 'DiagramObj ' + ((_b = netzLeitungCimObj.shortName) !== null && _b !== void 0 ? _b : '');
|
|
1375
|
+
}
|
|
1376
|
+
else {
|
|
1377
|
+
diagramObject.name = 'DiagramObj HGUE-Leitung';
|
|
1378
|
+
}
|
|
1379
|
+
for (let idx = 0; idx < tempDiagramObjectPoints.length; ++idx) {
|
|
1380
|
+
const diagramObjectPoint = new DiagramObjectPoint_1.DiagramObjectPoint(tempDiagramObjectPoints[idx].xPosition, tempDiagramObjectPoints[idx].yPosition, idx + 1);
|
|
1381
|
+
diagramObjectPoint.mrid = utils_1.generateUUID();
|
|
1382
|
+
diagramObjectPoint.diagramObject = diagramObject;
|
|
1383
|
+
diagramObject.addDiagramObjectPoint(diagramObjectPoint);
|
|
1384
|
+
}
|
|
1308
1385
|
}
|
|
1309
1386
|
}
|
|
1310
1387
|
}
|
|
@@ -1496,8 +1573,8 @@ class ConverterI7 {
|
|
|
1496
1573
|
return;
|
|
1497
1574
|
const knoten1pelemIDs = filteredResults.map(elem => elem.knoten);
|
|
1498
1575
|
let sqlStatement;
|
|
1499
|
-
sqlStatement = `SELECT *
|
|
1500
|
-
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.STERNPUNKT_KNOTEN]}
|
|
1576
|
+
sqlStatement = `SELECT *
|
|
1577
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.STERNPUNKT_KNOTEN]}
|
|
1501
1578
|
WHERE ${integral_sql_1.getWhereIDs('id', knoten1pelemIDs).join(' OR ')};`;
|
|
1502
1579
|
const knoten1pelemResults = yield this.mysqlController.execQuery(sqlStatement);
|
|
1503
1580
|
const knoten1pelemMap = new Map();
|
|
@@ -1506,12 +1583,12 @@ class ConverterI7 {
|
|
|
1506
1583
|
arr.push(elem.id);
|
|
1507
1584
|
knoten1pelemMap.set(elem.netzobjekt, arr);
|
|
1508
1585
|
}
|
|
1509
|
-
sqlStatement = `SELECT id AS 'netzobjektID', trafo3w AS 'trafoID', 'netz_trafo3w' AS 'trafoType'
|
|
1510
|
-
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO3_WICKLUNG]}
|
|
1511
|
-
WHERE id IN (${knoten1pelemResults.map(elem => elem.netzobjekt).join(',')})
|
|
1512
|
-
UNION ALL
|
|
1513
|
-
SELECT id AS 'netzobjektID', id AS 'trafoID', 'netz_trafo2w' AS 'trafoType'
|
|
1514
|
-
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO2W]}
|
|
1586
|
+
sqlStatement = `SELECT id AS 'netzobjektID', trafo3w AS 'trafoID', 'netz_trafo3w' AS 'trafoType'
|
|
1587
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO3_WICKLUNG]}
|
|
1588
|
+
WHERE id IN (${knoten1pelemResults.map(elem => elem.netzobjekt).join(',')})
|
|
1589
|
+
UNION ALL
|
|
1590
|
+
SELECT id AS 'netzobjektID', id AS 'trafoID', 'netz_trafo2w' AS 'trafoType'
|
|
1591
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO2W]}
|
|
1515
1592
|
WHERE id IN (${knoten1pelemResults.map(elem => elem.netzobjekt).join(',')});`;
|
|
1516
1593
|
const trafoIDTypeResults = yield this.mysqlController.execQuery(sqlStatement);
|
|
1517
1594
|
const trafoIDTypeMap = new Map();
|
|
@@ -4570,44 +4647,44 @@ class ConverterI7 {
|
|
|
4570
4647
|
let tempKnotenId = i7Data.spgreg_anschluss === 0 ? i7Data.aknoten :
|
|
4571
4648
|
(i7Data.spgreg_anschluss === 1 ? i7Data.eknoten : undefined);
|
|
4572
4649
|
if (tempKnotenId !== undefined) {
|
|
4573
|
-
let queryResult = yield this.mysqlController.execQuery(`SELECT id
|
|
4574
|
-
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SF]}
|
|
4650
|
+
let queryResult = yield this.mysqlController.execQuery(`SELECT id
|
|
4651
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SF]}
|
|
4575
4652
|
WHERE id = ${tempKnotenId};`);
|
|
4576
4653
|
if (queryResult.length === 1) {
|
|
4577
4654
|
const tabName_NetzSSAB = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.SAMMELSCHIENE];
|
|
4578
4655
|
const tabName_NetzSchaltfeld = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.SCHALTFELD];
|
|
4579
4656
|
const tabName_NetzKnotenSf = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SF];
|
|
4580
|
-
const sqlStatement = `SELECT ${tabName_NetzSSAB}.id,
|
|
4581
|
-
${tabName_NetzSSAB}.umin,
|
|
4582
|
-
${tabName_NetzSSAB}.umax,
|
|
4583
|
-
${tabName_NetzSSAB}.usoll
|
|
4584
|
-
FROM ${tabName_NetzSSAB}
|
|
4585
|
-
LEFT JOIN ${tabName_NetzSchaltfeld}
|
|
4586
|
-
ON ${tabName_NetzSSAB}.saabschnitt = ${tabName_NetzSchaltfeld}.saabschnitt
|
|
4587
|
-
LEFT JOIN ${tabName_NetzKnotenSf}
|
|
4588
|
-
ON ${tabName_NetzKnotenSf}.schaltfeld = ${tabName_NetzSchaltfeld}.id
|
|
4657
|
+
const sqlStatement = `SELECT ${tabName_NetzSSAB}.id,
|
|
4658
|
+
${tabName_NetzSSAB}.umin,
|
|
4659
|
+
${tabName_NetzSSAB}.umax,
|
|
4660
|
+
${tabName_NetzSSAB}.usoll
|
|
4661
|
+
FROM ${tabName_NetzSSAB}
|
|
4662
|
+
LEFT JOIN ${tabName_NetzSchaltfeld}
|
|
4663
|
+
ON ${tabName_NetzSSAB}.saabschnitt = ${tabName_NetzSchaltfeld}.saabschnitt
|
|
4664
|
+
LEFT JOIN ${tabName_NetzKnotenSf}
|
|
4665
|
+
ON ${tabName_NetzKnotenSf}.schaltfeld = ${tabName_NetzSchaltfeld}.id
|
|
4589
4666
|
WHERE ${tabName_NetzKnotenSf}.id = ${tempKnotenId}`;
|
|
4590
4667
|
minMaxSollResult = yield this.mysqlController.execQuery(sqlStatement);
|
|
4591
4668
|
}
|
|
4592
4669
|
else {
|
|
4593
|
-
queryResult = yield this.mysqlController.execQuery(`SELECT id
|
|
4594
|
-
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_ZW]}
|
|
4670
|
+
queryResult = yield this.mysqlController.execQuery(`SELECT id
|
|
4671
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_ZW]}
|
|
4595
4672
|
WHERE id = ${tempKnotenId};`);
|
|
4596
4673
|
if (queryResult.length === 1) {
|
|
4597
4674
|
const tabName_NetzSo = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SO];
|
|
4598
4675
|
const tabName_NetzSchlaufe = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.SCHLAUFE];
|
|
4599
4676
|
const tabName_NetzKnotenZw = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_ZW];
|
|
4600
|
-
minMaxSollResult = yield this.mysqlController.execQuery(`SELECT ${tabName_NetzSo}.id, ${tabName_NetzSo}.umin, ${tabName_NetzSo}.umax, ${tabName_NetzSo}.usoll
|
|
4601
|
-
FROM ${tabName_NetzKnotenZw}
|
|
4602
|
-
LEFT JOIN ${tabName_NetzSchlaufe} ON
|
|
4603
|
-
${tabName_NetzSchlaufe}.id = ${tabName_NetzKnotenZw}.schlaufe
|
|
4604
|
-
LEFT JOIN ${tabName_NetzSo} ON
|
|
4605
|
-
${tabName_NetzSchlaufe}.eknoten = ${tabName_NetzSo}.id
|
|
4677
|
+
minMaxSollResult = yield this.mysqlController.execQuery(`SELECT ${tabName_NetzSo}.id, ${tabName_NetzSo}.umin, ${tabName_NetzSo}.umax, ${tabName_NetzSo}.usoll
|
|
4678
|
+
FROM ${tabName_NetzKnotenZw}
|
|
4679
|
+
LEFT JOIN ${tabName_NetzSchlaufe} ON
|
|
4680
|
+
${tabName_NetzSchlaufe}.id = ${tabName_NetzKnotenZw}.schlaufe
|
|
4681
|
+
LEFT JOIN ${tabName_NetzSo} ON
|
|
4682
|
+
${tabName_NetzSchlaufe}.eknoten = ${tabName_NetzSo}.id
|
|
4606
4683
|
WHERE ${tabName_NetzKnotenZw}.id = ${tempKnotenId};`);
|
|
4607
4684
|
}
|
|
4608
4685
|
else {
|
|
4609
|
-
minMaxSollResult = yield this.mysqlController.execQuery(`SELECT id, umin, umax, usoll
|
|
4610
|
-
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SO]}
|
|
4686
|
+
minMaxSollResult = yield this.mysqlController.execQuery(`SELECT id, umin, umax, usoll
|
|
4687
|
+
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SO]}
|
|
4611
4688
|
where id = ${tempKnotenId};`);
|
|
4612
4689
|
}
|
|
4613
4690
|
}
|
|
@@ -4615,14 +4692,14 @@ class ConverterI7 {
|
|
|
4615
4692
|
else if (spgKnotenId !== undefined) {
|
|
4616
4693
|
const tabName_NetzSo = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.KNOTEN_SO];
|
|
4617
4694
|
const tabName_NetzSSAB = integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.SAMMELSCHIENE];
|
|
4618
|
-
const query = ` SELECT Voltage.id, Voltage.umin, Voltage.umax, Voltage.usoll
|
|
4619
|
-
FROM (
|
|
4620
|
-
SELECT id, umin, umax, usoll
|
|
4621
|
-
FROM ${tabName_NetzSo}
|
|
4622
|
-
WHERE ${tabName_NetzSo}.id = ${spgKnotenId}
|
|
4623
|
-
UNION
|
|
4624
|
-
SELECT id, umin, umax, usoll
|
|
4625
|
-
FROM ${tabName_NetzSSAB}
|
|
4695
|
+
const query = ` SELECT Voltage.id, Voltage.umin, Voltage.umax, Voltage.usoll
|
|
4696
|
+
FROM (
|
|
4697
|
+
SELECT id, umin, umax, usoll
|
|
4698
|
+
FROM ${tabName_NetzSo}
|
|
4699
|
+
WHERE ${tabName_NetzSo}.id = ${spgKnotenId}
|
|
4700
|
+
UNION
|
|
4701
|
+
SELECT id, umin, umax, usoll
|
|
4702
|
+
FROM ${tabName_NetzSSAB}
|
|
4626
4703
|
WHERE ${tabName_NetzSSAB}.id = ${spgKnotenId}) as Voltage`;
|
|
4627
4704
|
minMaxSollResult = yield this.mysqlController.execQuery(query);
|
|
4628
4705
|
}
|
|
@@ -5144,7 +5221,7 @@ class ConverterI7 {
|
|
|
5144
5221
|
}
|
|
5145
5222
|
queryLeitungsAnschlussIDs() {
|
|
5146
5223
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
5147
|
-
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LEITUNG) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5224
|
+
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LEITUNG) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5148
5225
|
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LEITUNG]}`) : [];
|
|
5149
5226
|
for (const result of results) {
|
|
5150
5227
|
this.leitungAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
@@ -5154,13 +5231,13 @@ class ConverterI7 {
|
|
|
5154
5231
|
}
|
|
5155
5232
|
queryTrafosAnschlussIDs() {
|
|
5156
5233
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
5157
|
-
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO2W) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5234
|
+
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO2W) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5158
5235
|
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO2W]}`) : [];
|
|
5159
5236
|
for (const result of results) {
|
|
5160
5237
|
this.trafo2wAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
5161
5238
|
this.trafo2wAnschlussKnotenIDs.add(result[`eknoten`]);
|
|
5162
5239
|
}
|
|
5163
|
-
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO3_WICKLUNG) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5240
|
+
results = this.isTableAvailable(integral_sql_1.Integral7TableNames.TRAFO3_WICKLUNG) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5164
5241
|
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.TRAFO3_WICKLUNG]}`) : [];
|
|
5165
5242
|
for (const result of results) {
|
|
5166
5243
|
this.trafo3wAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
@@ -5170,7 +5247,7 @@ class ConverterI7 {
|
|
|
5170
5247
|
}
|
|
5171
5248
|
queryHgueAnschlussIDs() {
|
|
5172
5249
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
5173
|
-
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.HGUE_LEITUNG) ? yield this.mysqlController.execQuery(`SELECT DISTINCT anetzobjekt, enetzobjekt
|
|
5250
|
+
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.HGUE_LEITUNG) ? yield this.mysqlController.execQuery(`SELECT DISTINCT anetzobjekt, enetzobjekt
|
|
5174
5251
|
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.HGUE_LEITUNG]}`) : [];
|
|
5175
5252
|
for (const result of results) {
|
|
5176
5253
|
this.hgueAnschlussKnotenIDs.add(result[`anetzobjekt`]);
|
|
@@ -5180,7 +5257,7 @@ class ConverterI7 {
|
|
|
5180
5257
|
}
|
|
5181
5258
|
queryLDroselAnschlussIDs() {
|
|
5182
5259
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
5183
|
-
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSDROSSEL) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5260
|
+
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSDROSSEL) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5184
5261
|
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LAENGSDROSSEL]}`) : [];
|
|
5185
5262
|
for (const result of results) {
|
|
5186
5263
|
this.lDrosselAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
@@ -5190,7 +5267,7 @@ class ConverterI7 {
|
|
|
5190
5267
|
}
|
|
5191
5268
|
queryErsatzLaengsAnschlussIDs() {
|
|
5192
5269
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
5193
|
-
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.ERSATZLAENGSZWEIG) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5270
|
+
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.ERSATZLAENGSZWEIG) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5194
5271
|
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.ERSATZLAENGSZWEIG]}`) : [];
|
|
5195
5272
|
for (const result of results) {
|
|
5196
5273
|
this.ersatzZweigAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
@@ -5200,7 +5277,7 @@ class ConverterI7 {
|
|
|
5200
5277
|
}
|
|
5201
5278
|
queryLkondensatorAnschlussIDs() {
|
|
5202
5279
|
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
5203
|
-
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5280
|
+
let results = this.isTableAvailable(integral_sql_1.Integral7TableNames.LAENGSKONDENSATOR) ? yield this.mysqlController.execQuery(`SELECT DISTINCT aknoten, eknoten
|
|
5204
5281
|
FROM ${integral_sql_1.Integral7TableNames[integral_sql_1.I7Objects.LAENGSKONDENSATOR]}`) : [];
|
|
5205
5282
|
for (const result of results) {
|
|
5206
5283
|
this.lKondensatorAnschlussKnotenIDs.add(result[`aknoten`]);
|
|
@@ -5305,15 +5382,15 @@ class ConverterI7 {
|
|
|
5305
5382
|
connectivityNode.toEndNameTso = tsoName;
|
|
5306
5383
|
}
|
|
5307
5384
|
else {
|
|
5308
|
-
this.logger.error(`Grenzknoten ${connectivityNode.name} mit der UUID ${connectivityNode.mrid} ist bereits belegt:
|
|
5309
|
-
fromEndName ${connectivityNode.fromEndName}
|
|
5310
|
-
fromEndIsoCode ${connectivityNode.fromEndIsoCode}
|
|
5311
|
-
fromEndNameTso ${connectivityNode.fromEndNameTso}
|
|
5312
|
-
toEndName ${connectivityNode.toEndName}
|
|
5313
|
-
toEndIsoCode ${connectivityNode.toEndIsoCode}
|
|
5314
|
-
toEndNameTso ${connectivityNode.toEndNameTso}
|
|
5315
|
-
name ${name}
|
|
5316
|
-
isoCode ${isoCode}
|
|
5385
|
+
this.logger.error(`Grenzknoten ${connectivityNode.name} mit der UUID ${connectivityNode.mrid} ist bereits belegt:
|
|
5386
|
+
fromEndName ${connectivityNode.fromEndName}
|
|
5387
|
+
fromEndIsoCode ${connectivityNode.fromEndIsoCode}
|
|
5388
|
+
fromEndNameTso ${connectivityNode.fromEndNameTso}
|
|
5389
|
+
toEndName ${connectivityNode.toEndName}
|
|
5390
|
+
toEndIsoCode ${connectivityNode.toEndIsoCode}
|
|
5391
|
+
toEndNameTso ${connectivityNode.toEndNameTso}
|
|
5392
|
+
name ${name}
|
|
5393
|
+
isoCode ${isoCode}
|
|
5317
5394
|
tsoName ${tsoName}`);
|
|
5318
5395
|
}
|
|
5319
5396
|
}
|