@enervance/insight-cim-model 0.0.165 → 0.0.167

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.
Files changed (26) hide show
  1. package/dist/converter/integral7/converter.integral7.d.ts +4 -0
  2. package/dist/converter/integral7/converter.integral7.js +10 -10
  3. package/dist/converter/integral7/converter.integral7.js.map +1 -1
  4. package/dist/converter/integral7/dl-convert/data-manager.d.ts +2 -0
  5. package/dist/converter/integral7/dl-convert/data-manager.js +4 -0
  6. package/dist/converter/integral7/dl-convert/data-manager.js.map +1 -1
  7. package/dist/converter/integral7/dl-convert/dl-converter-i7.d.ts +5 -1
  8. package/dist/converter/integral7/dl-convert/dl-converter-i7.js +103 -29
  9. package/dist/converter/integral7/dl-convert/dl-converter-i7.js.map +1 -1
  10. package/dist/converter/integral7/dl-convert/executor.d.ts +3 -2
  11. package/dist/converter/integral7/dl-convert/executor.js +17 -12
  12. package/dist/converter/integral7/dl-convert/executor.js.map +1 -1
  13. package/dist/converter/integral7/model/dl-utils/util-functions.d.ts +2 -0
  14. package/dist/converter/integral7/model/dl-utils/util-functions.js +19 -0
  15. package/dist/converter/integral7/model/dl-utils/util-functions.js.map +1 -1
  16. package/dist/etl/etl-neplan/etl-neplan.js +9 -1
  17. package/dist/etl/etl-neplan/etl-neplan.js.map +1 -1
  18. package/dist/model/core/Feeder.js +1 -1
  19. package/dist/model/core/Feeder.js.map +1 -1
  20. package/dist/utils2/cim.model.utils.d.ts +3 -0
  21. package/dist/utils2/cim.model.utils.js +32 -0
  22. package/dist/utils2/cim.model.utils.js.map +1 -1
  23. package/dist/utils2/fuseki.utils.d.ts +1 -0
  24. package/dist/utils2/fuseki.utils.js +11 -0
  25. package/dist/utils2/fuseki.utils.js.map +1 -1
  26. package/package.json +6 -2
@@ -16,9 +16,11 @@ export declare class DataManager {
16
16
  dbObjectGraph: DbObjectGraph<I7TableSchemas, typeof i7SchemaKeyDefinitions>;
17
17
  dbObjectKeyCimModelUuidGraph: DbObjectKey2CimModelUUIDGraph<typeof i7SchemaKeyDefinitions>;
18
18
  cimModelGraph: CimModelGraph;
19
+ trafowicklungIntegralId2Uuid: Map<number, string>;
19
20
  constructor(logger?: ILogger);
20
21
  setDbObjectGraph(graph: DbObjectGraph<I7TableSchemas, typeof i7SchemaKeyDefinitions>): void;
21
22
  setCimModelGraph(graph: CimModelGraph): void;
23
+ addTrafowicklungIntegralId2UuidMapping(i7Id: number, uuid: string): void;
22
24
  setDbObjectKeyCimModelUuidGraph(graph: DbObjectKey2CimModelUUIDGraph<typeof i7SchemaKeyDefinitions>): void;
23
25
  loadFromMySQL(mysqlController: MysqlController, options: LoadFromMySQLOptions): Promise<void>;
24
26
  }
@@ -7,6 +7,7 @@ const executor_1 = require("./executor.js");
7
7
  class DataManager {
8
8
  constructor(logger) {
9
9
  this.logger = logger;
10
+ this.trafowicklungIntegralId2Uuid = new Map();
10
11
  }
11
12
  setDbObjectGraph(graph) {
12
13
  this.dbObjectGraph = graph;
@@ -14,6 +15,9 @@ class DataManager {
14
15
  setCimModelGraph(graph) {
15
16
  this.cimModelGraph = graph;
16
17
  }
18
+ addTrafowicklungIntegralId2UuidMapping(i7Id, uuid) {
19
+ this.trafowicklungIntegralId2Uuid.set(i7Id, uuid);
20
+ }
17
21
  setDbObjectKeyCimModelUuidGraph(graph) {
18
22
  this.dbObjectKeyCimModelUuidGraph = graph;
19
23
  }
@@ -1 +1 @@
1
- {"version":3,"file":"data-manager.js","sourceRoot":"","sources":["../../../../src/converter/integral7/dl-convert/data-manager.ts"],"names":[],"mappings":";;;;AACA,uEAOwC;AAKxC,yCAAsC;AAWtC,MAAa,WAAW;IAOtB,YAAY,MAAgB;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED,gBAAgB,CAAC,KAAmE;QAClF,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAED,gBAAgB,CAAC,KAAoB;QACnC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAED,+BAA+B,CAAC,KAAmE;QACjG,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;IAC5C,CAAC;IAEK,aAAa,CAAC,eAAgC,EAAE,OAA6B;;;YACjF,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,gBAAgB,EAAE,CAAC;YAE/D,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE;gBAC/B,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;oBAChC,wBAAwB;oBACxB,IAAI,0BAA0B,GAAG,EAAE,CAAC;oBACpC,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;wBAC3C,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,EAAG,EAAC,oDAAoD;4BAC3F,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gCAC/D,OAAO,GAAG,UAAU,MAAM,GAAG,EAAE,CAAA;4BACjC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;4BAChB,0BAA0B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;yBAC/C;6BAAM,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,EAAG,EAAC,oDAAoD;4BAClG,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAClE,0BAA0B,CAAC,IAAI,CAAC,IAAI,UAAU,QAAQ,YAAY,GAAG,CAAC,CAAC;yBACxE;qBACF;oBACD,IAAI,WAAW,GAAG;kCACQ,SAAS,EAAE,CAAC;oBACtC,IAAI,0BAA0B,CAAC,MAAM,GAAG,CAAC,EAAE;wBACzC,WAAW,IAAI,UAAU,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;qBACrE;oBACD,WAAW,IAAI,GAAG,CAAA;oBAClB,sBAAsB;oBAEtB,IAAI;wBACF,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wBAElE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,MAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,mCAAI,EAAE,CAAC;wBAEpE,IAAI,CAAC,aAAa,CAAC,UAAU,CAC3B,SAAkC,EAAE,8CAAyB,CAAC,SAAS,CAAC,EAAE,YAAY,CACvF,CAAC;qBACH;oBAAC,OAAO,CAAC,EAAE;wBACV,4BAA4B;wBAC5B,mGAAmG;wBACnG,qDAAqD;wBACrD,0FAA0F;wBAC1F,kCAAkC;wBAClC,IAAG,CAAC,mBAAQ,CAAC,eAAe,EAAC;4BAC3B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;yBAChB;qBACF;iBACF;aACF;;KACF;CACF;AAtED,kCAsEC"}
1
+ {"version":3,"file":"data-manager.js","sourceRoot":"","sources":["../../../../src/converter/integral7/dl-convert/data-manager.ts"],"names":[],"mappings":";;;;AACA,uEAKwC;AAIxC,yCAAsC;AAWtC,MAAa,WAAW;IAStB,YAAY,MAAgB;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,4BAA4B,GAAG,IAAI,GAAG,EAAkB,CAAC;IAChE,CAAC;IAED,gBAAgB,CAAC,KAAmE;QAClF,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAED,gBAAgB,CAAC,KAAoB;QACnC,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAED,sCAAsC,CAAC,IAAY,EAAE,IAAY;QAC/D,IAAI,CAAC,4BAA4B,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACpD,CAAC;IAED,+BAA+B,CAAC,KAAmE;QACjG,IAAI,CAAC,4BAA4B,GAAG,KAAK,CAAC;IAC5C,CAAC;IAEK,aAAa,CAAC,eAAgC,EAAE,OAA6B;;;YACjF,MAAM,aAAa,GAAG,MAAM,eAAe,CAAC,gBAAgB,EAAE,CAAC;YAE/D,KAAK,MAAM,SAAS,IAAI,OAAO,EAAE;gBAC/B,IAAI,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;oBAChC,wBAAwB;oBACxB,IAAI,0BAA0B,GAAG,EAAE,CAAC;oBACpC,KAAK,MAAM,UAAU,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE;wBAC3C,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,EAAC,oDAAoD;4BAC1F,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gCAC/D,OAAO,GAAG,UAAU,MAAM,GAAG,EAAE,CAAA;4BACjC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;4BAChB,0BAA0B,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;yBAC/C;6BAAM,IAAI,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,EAAE,EAAC,oDAAoD;4BACjG,MAAM,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;4BAClE,0BAA0B,CAAC,IAAI,CAAC,IAAI,UAAU,QAAQ,YAAY,GAAG,CAAC,CAAC;yBACxE;qBACF;oBACD,IAAI,WAAW,GAAG;kCACQ,SAAS,EAAE,CAAC;oBACtC,IAAI,0BAA0B,CAAC,MAAM,GAAG,CAAC,EAAE;wBACzC,WAAW,IAAI,UAAU,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;qBACrE;oBACD,WAAW,IAAI,GAAG,CAAA;oBAClB,sBAAsB;oBAEtB,IAAI;wBACF,MAAM,YAAY,GAAG,MAAM,eAAe,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;wBAElE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,MAAA,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,mCAAI,EAAE,CAAC;wBAEpE,IAAI,CAAC,aAAa,CAAC,UAAU,CAC3B,SAAkC,EAAE,8CAAyB,CAAC,SAAS,CAAC,EAAE,YAAY,CACvF,CAAC;qBACH;oBAAC,OAAO,CAAC,EAAE;wBACV,4BAA4B;wBAC5B,mGAAmG;wBACnG,qDAAqD;wBACrD,0FAA0F;wBAC1F,kCAAkC;wBAClC,IAAI,CAAC,mBAAQ,CAAC,eAAe,EAAE;4BAC7B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;yBAChB;qBACF;iBACF;aACF;;KACF;CACF;AA9ED,kCA8EC"}
@@ -19,7 +19,7 @@ export declare class DLConverterI7 {
19
19
  private dbObjectKeyCimModelUuidGraph;
20
20
  private cimModelGraph;
21
21
  private exportedTerminalUUIDs;
22
- private exportedBusbarSectionConnectivityNodeUuidToDiagramObject;
22
+ private trafowicklungIntegralId2Uuid;
23
23
  exportedDiagramObjectsGraph: {
24
24
  [variantenNr: number | string]: {
25
25
  [netzId: number | string]: DiagramObject;
@@ -27,9 +27,11 @@ export declare class DLConverterI7 {
27
27
  };
28
28
  constructor(configUuid: Array<IUuidConfig>, logger?: ILogger, config?: DLConverterI7Config);
29
29
  addExportedDiagramObjectToGraph(variantennr: number, netzId: number, diagramObject: DiagramObject): void;
30
+ getExportedDiagramObjectBy(variantennr: number, netzId: number): DiagramObject | undefined;
30
31
  setDbObjectGraph(graph: DbObjectGraph<I7TableSchemas, typeof i7SchemaKeyDefinitions>): void;
31
32
  setCimModelGraph(graph: CimModelGraph): void;
32
33
  setDbObjectKeyCimModelUuidGraph(graph: DbObjectKey2CimModelUUIDGraph<typeof i7SchemaKeyDefinitions>): void;
34
+ setTrafowicklungIntegralId2Uuid(trafowicklungIntegralId2Uuid: Map<number, string>): void;
33
35
  addCimObject<K extends typeof i7SchemaKeyDefinitions, KN extends keyof typeof i7SchemaKeyDefinitions & string>(uuid: string, object: any, typeOfKey?: KN, dbKey?: K[KN]): void;
34
36
  /**
35
37
  * convertNsgVariante
@@ -155,6 +157,8 @@ export declare class DLConverterI7 {
155
157
  * result is either [Terminal-UUID, ConnectivityNode-UUID, Terminal-UUID] or []
156
158
  */
157
159
  private findConnectionAsUuidsBetweenTwoConductingEquipments;
160
+ private adjustTransformerTerminalPositions;
158
161
  private createTerminalDiagramObjectFromPoints;
162
+ private alreadyExported;
159
163
  }
160
164
  export {};
@@ -29,7 +29,7 @@ class DLConverterI7 {
29
29
  this.dbObjectKeyCimModelUuidGraph = new cim_model_graph_1.DbObjectKey2CimModelUUIDGraph(convert_graph_keys_1.i7SchemaKeyDefinitions);
30
30
  this.cimModelGraph = new cim_model_graph_1.CimModelGraph();
31
31
  this.exportedTerminalUUIDs = new Set();
32
- this.exportedBusbarSectionConnectivityNodeUuidToDiagramObject = new Map();
32
+ // this.exportedBusbarSectionConnectivityNodeUuidToDiagramObject = new Map();
33
33
  util_functions_1.DLUtilFunctions.setUuidNamespaces(this.configUuid);
34
34
  }
35
35
  addExportedDiagramObjectToGraph(variantennr, netzId, diagramObject) {
@@ -37,6 +37,12 @@ class DLConverterI7 {
37
37
  this.exportedDiagramObjectsGraph[variantennr] = (_a = this.exportedDiagramObjectsGraph[variantennr]) !== null && _a !== void 0 ? _a : {};
38
38
  this.exportedDiagramObjectsGraph[variantennr][netzId] = diagramObject;
39
39
  }
40
+ getExportedDiagramObjectBy(variantennr, netzId) {
41
+ if (variantennr in this.exportedDiagramObjectsGraph) {
42
+ return this.exportedDiagramObjectsGraph[variantennr][netzId];
43
+ }
44
+ return undefined;
45
+ }
40
46
  setDbObjectGraph(graph) {
41
47
  this.dbObjectGraph = graph;
42
48
  }
@@ -46,6 +52,9 @@ class DLConverterI7 {
46
52
  setDbObjectKeyCimModelUuidGraph(graph) {
47
53
  this.dbObjectKeyCimModelUuidGraph = graph;
48
54
  }
55
+ setTrafowicklungIntegralId2Uuid(trafowicklungIntegralId2Uuid) {
56
+ this.trafowicklungIntegralId2Uuid = trafowicklungIntegralId2Uuid;
57
+ }
49
58
  addCimObject(uuid, object, typeOfKey, dbKey) {
50
59
  if (typeOfKey !== undefined && dbKey !== undefined)
51
60
  this.dbObjectKeyCimModelUuidGraph.addRelation(typeOfKey, dbKey, uuid);
@@ -395,14 +404,20 @@ class DLConverterI7 {
395
404
  }
396
405
  nodePointMap.set(prevNode.eknoten, util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint(position[0], position[1], null));
397
406
  // END: Last ConnectivityNode
407
+ // if (!this.alreadyExported(nsgSchaltfeld.variantennr, nsgSchaltfeld.id)) {
408
+ // resultingDiagramObjects.push(value);
409
+ // this.addExportedDiagramObjectToGraph(nsgSchaltfeld.variantennr, nsgSchaltfeld.id, value);
410
+ // }
398
411
  }
399
412
  for (const nodePointEntry of nodePointMap.entries()) {
400
413
  const key = nodePointEntry[0];
401
414
  const value = nodePointEntry[1];
402
415
  const cimObjectUUID = (_b = (_a = this.dbObjectKeyCimModelUuidGraph) === null || _a === void 0 ? void 0 : _a.getCimObjectIdFromDbKey(convert_graph_keys_1.i7SchemaKeyNames.IdOnlyKey, { id: key })) !== null && _b !== void 0 ? _b : undefined;
403
416
  value.identifiedObjectUUID = cimObjectUUID;
404
- resultingDiagramObjects.push(value);
405
- this.addExportedDiagramObjectToGraph(nsgSchaltfeld.variantennr, key, value);
417
+ if (!this.alreadyExported(nsgSchaltfeld.variantennr, key)) {
418
+ resultingDiagramObjects.push(value);
419
+ this.addExportedDiagramObjectToGraph(nsgSchaltfeld.variantennr, key, value);
420
+ }
406
421
  }
407
422
  /* ---------- ---------- ---------- */
408
423
  // BEGIN: Terminal-Export
@@ -513,7 +528,7 @@ class DLConverterI7 {
513
528
  const createdDiagramObjects = [];
514
529
  createdDiagramObjects.push(powerTransformerDiagramObject);
515
530
  let terminal1DiagramObject;
516
- let powerTransformerEnd1TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo2W.guid_w1);
531
+ let powerTransformerEnd1TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo2W.guid_w1, 1);
517
532
  if (powerTransformerEnd1TerminalUuid) {
518
533
  terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
519
534
  xPosition: positionAnschlussanf[0],
@@ -525,7 +540,7 @@ class DLConverterI7 {
525
540
  createdDiagramObjects.push(terminal1DiagramObject);
526
541
  }
527
542
  let terminal2DiagramObject;
528
- let powerTransformerEnd2TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo2W.guid_w2);
543
+ let powerTransformerEnd2TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo2W.guid_w2, 2);
529
544
  if (powerTransformerEnd2TerminalUuid) {
530
545
  terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
531
546
  xPosition: positionAnschlussend[0],
@@ -544,15 +559,17 @@ class DLConverterI7 {
544
559
  diagramObjectPoint.yPosition += nsgStandort.yrel;
545
560
  }
546
561
  }
547
- const doAKnotenConnectivityNode = this.exportedDiagramObjectsGraph[nsgTrafo2w.variantennr][netzTrafo2W.aknoten];
562
+ const doAKnotenConnectivityNode = this.getExportedDiagramObjectBy(nsgTrafo2w.variantennr, netzTrafo2W.aknoten);
548
563
  if (terminal1DiagramObject && doAKnotenConnectivityNode) {
549
564
  const dopAKnotenConnectivityNode = doAKnotenConnectivityNode.diagramObjectPoints[0];
550
565
  util_functions_1.DLUtilFunctions.copyAndPushDiagramObjectPoint(terminal1DiagramObject, dopAKnotenConnectivityNode, false);
566
+ this.adjustTransformerTerminalPositions(terminal1DiagramObject, powerTransformerDiagramObject);
551
567
  }
552
- const doEKnotenConnectivityNode = this.exportedDiagramObjectsGraph[nsgTrafo2w.variantennr][netzTrafo2W.eknoten];
568
+ const doEKnotenConnectivityNode = this.getExportedDiagramObjectBy(nsgTrafo2w.variantennr, netzTrafo2W.eknoten);
553
569
  if (terminal2DiagramObject && doEKnotenConnectivityNode) {
554
570
  const dopEKnotenConnectivityNode = doEKnotenConnectivityNode.diagramObjectPoints[0];
555
571
  util_functions_1.DLUtilFunctions.copyAndPushDiagramObjectPoint(terminal2DiagramObject, dopEKnotenConnectivityNode, false);
572
+ this.adjustTransformerTerminalPositions(terminal2DiagramObject, powerTransformerDiagramObject);
556
573
  }
557
574
  return createdDiagramObjects;
558
575
  });
@@ -602,7 +619,7 @@ class DLConverterI7 {
602
619
  const createdDiagramObjects = [];
603
620
  createdDiagramObjects.push(powerTransformerDiagramObject);
604
621
  let terminal1DiagramObject;
605
- let powerTransformerEnd1TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo3w.guid_w1);
622
+ let powerTransformerEnd1TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo3w.guid_w1, 1);
606
623
  if (powerTransformerEnd1TerminalUuid) {
607
624
  terminal1DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
608
625
  xPosition: rotationenGroup[exchangeGroup[1]][0],
@@ -613,7 +630,7 @@ class DLConverterI7 {
613
630
  createdDiagramObjects.push(terminal1DiagramObject);
614
631
  }
615
632
  let terminal2DiagramObject;
616
- let powerTransformerEnd2TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo3w.guid_w2);
633
+ let powerTransformerEnd2TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo3w.guid_w2, 2);
617
634
  if (powerTransformerEnd2TerminalUuid) {
618
635
  terminal2DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
619
636
  xPosition: rotationenGroup[exchangeGroup[xMirroring ? 3 : 2]][0],
@@ -624,9 +641,9 @@ class DLConverterI7 {
624
641
  createdDiagramObjects.push(terminal2DiagramObject);
625
642
  }
626
643
  let terminal3DiagramObject;
627
- let powerTransformerEnd3TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo3w.guid_w3);
644
+ let powerTransformerEnd3TerminalUuid = this.lookupTransformerEndTerminalUUIDBy(powerTransformerUUID, netzTrafo3w.guid_w3, 3);
628
645
  if (powerTransformerEnd3TerminalUuid) {
629
- const terminal3DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
646
+ terminal3DiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoint2({
630
647
  xPosition: rotationenGroup[exchangeGroup[xMirroring ? 2 : 3]][0],
631
648
  yPosition: rotationenGroup[exchangeGroup[xMirroring ? 2 : 3]][1],
632
649
  diagramObjectName: 'Terminal 3',
@@ -652,6 +669,10 @@ class DLConverterI7 {
652
669
  if (terminal1DiagramObject && w1TypedResult) {
653
670
  const w1ConnectivityNodePosition = yield this.getConnectivityNodePositionFor(w1TypedResult.type, w1TypedResult.object);
654
671
  util_functions_1.DLUtilFunctions.copyAndPushXYCoordinates(terminal1DiagramObject, w1ConnectivityNodePosition, false);
672
+ this.adjustTransformerTerminalPositions(terminal1DiagramObject, powerTransformerDiagramObject);
673
+ // } else {
674
+ // const powerTransformer: PowerTransformer = this.cimModelGraph.findObjectByUUID(powerTransformerUUID);
675
+ // console.log(powerTransformer)
655
676
  }
656
677
  const w2TypedResult = this.dbObjectGraph.findTypedFirstByKey(convert_graph_keys_1.i7SchemaKeyNames.VariantenNrIdKey, {
657
678
  variantennr: nsgTrafo3w.variantennr, id: nsgTrafo3w.anschluss_w2
@@ -659,6 +680,10 @@ class DLConverterI7 {
659
680
  if (terminal2DiagramObject && w2TypedResult) {
660
681
  const w2ConnectivityNodePosition = yield this.getConnectivityNodePositionFor(w2TypedResult.type, w2TypedResult.object);
661
682
  util_functions_1.DLUtilFunctions.copyAndPushXYCoordinates(terminal2DiagramObject, w2ConnectivityNodePosition, false);
683
+ this.adjustTransformerTerminalPositions(terminal2DiagramObject, powerTransformerDiagramObject);
684
+ // } else {
685
+ // const powerTransformer: PowerTransformer = this.cimModelGraph.findObjectByUUID(powerTransformerUUID);
686
+ // console.log(powerTransformer)
662
687
  }
663
688
  const w3TypedResult = this.dbObjectGraph.findTypedFirstByKey(convert_graph_keys_1.i7SchemaKeyNames.VariantenNrIdKey, {
664
689
  variantennr: nsgTrafo3w.variantennr, id: nsgTrafo3w.anschluss_w3
@@ -666,23 +691,35 @@ class DLConverterI7 {
666
691
  if (terminal3DiagramObject && w3TypedResult) {
667
692
  const w3ConnectivityNodePosition = yield this.getConnectivityNodePositionFor(w3TypedResult.type, w3TypedResult.object);
668
693
  util_functions_1.DLUtilFunctions.copyAndPushXYCoordinates(terminal3DiagramObject, w3ConnectivityNodePosition, false);
694
+ this.adjustTransformerTerminalPositions(terminal3DiagramObject, powerTransformerDiagramObject);
695
+ // } else {
696
+ // const powerTransformer: PowerTransformer = this.cimModelGraph.findObjectByUUID(powerTransformerUUID);
697
+ // console.log(powerTransformer)
669
698
  }
670
699
  return createdDiagramObjects;
671
700
  });
672
701
  }
673
- lookupTransformerEndTerminalUUIDBy(powerTransformerUuid, powerTransformerEndUuid) {
674
- if (!powerTransformerEndUuid)
675
- return;
676
- if (powerTransformerEndUuid.startsWith('_'))
677
- powerTransformerEndUuid = powerTransformerEndUuid.substring(1);
678
- let powerTransformerEnd = this.cimModelGraph.findObjectByUUID(powerTransformerEndUuid);
679
- if (powerTransformerEnd)
680
- return powerTransformerEnd.getTerminalUUID();
681
- const powerTransformer = this.cimModelGraph.findObjectByUUID(powerTransformerUuid);
682
- if (powerTransformer) {
683
- powerTransformerEnd = powerTransformer.powerTransformerEnd.find(pte => pte.getUUID() === powerTransformerEndUuid);
702
+ lookupTransformerEndTerminalUUIDBy(powerTransformerUuid, powerTransformerEndUuid, endNumber) {
703
+ if (powerTransformerEndUuid) {
704
+ if (powerTransformerEndUuid.startsWith('_'))
705
+ powerTransformerEndUuid = powerTransformerEndUuid.substring(1);
706
+ let powerTransformerEnd = this.cimModelGraph.findObjectByUUID(powerTransformerEndUuid);
684
707
  if (powerTransformerEnd)
685
708
  return powerTransformerEnd.getTerminalUUID();
709
+ const powerTransformer = this.cimModelGraph.findObjectByUUID(powerTransformerUuid);
710
+ if (powerTransformer) {
711
+ powerTransformerEnd = powerTransformer.powerTransformerEnd.find(pte => pte.getUUID() === powerTransformerEndUuid);
712
+ if (powerTransformerEnd)
713
+ return powerTransformerEnd.getTerminalUUID();
714
+ }
715
+ }
716
+ else {
717
+ const powerTransformer = this.cimModelGraph.findObjectByUUID(powerTransformerUuid);
718
+ if (powerTransformer) {
719
+ let powerTransformerEnd = powerTransformer.powerTransformerEnd.find(pte => pte.getEndNumber() === endNumber);
720
+ if (powerTransformerEnd)
721
+ return powerTransformerEnd.getTerminalUUID();
722
+ }
686
723
  }
687
724
  return undefined;
688
725
  }
@@ -1049,8 +1086,10 @@ class DLConverterI7 {
1049
1086
  diagramObjectName: `DiagramObject ${nsgQuerzweig.querzweig}`,
1050
1087
  identifiedObjectUUID: cimObjectUUID
1051
1088
  });
1052
- this.addExportedDiagramObjectToGraph(nsgQuerzweig.variantennr, nsgQuerzweig.querzweig, querzweigDiagramObject);
1053
- resultingDiagramObjects.push(querzweigDiagramObject);
1089
+ if (!this.alreadyExported(nsgQuerzweig.variantennr, nsgQuerzweig.querzweig)) {
1090
+ this.addExportedDiagramObjectToGraph(nsgQuerzweig.variantennr, nsgQuerzweig.querzweig, querzweigDiagramObject);
1091
+ resultingDiagramObjects.push(querzweigDiagramObject);
1092
+ }
1054
1093
  /* ---------- ---------- ---------- */
1055
1094
  // BEGIN: Terminal-Export
1056
1095
  const doBackwardConnectivityNode = this.exportedDiagramObjectsGraph[nsgQuerzweig.variantennr][netzQuerzweig.anschluss];
@@ -1776,7 +1815,10 @@ class DLConverterI7 {
1776
1815
  const value = nodePointEntry[1];
1777
1816
  const cimObjectUUID = (_b = (_a = this.dbObjectKeyCimModelUuidGraph) === null || _a === void 0 ? void 0 : _a.getCimObjectIdFromDbKey(convert_graph_keys_1.i7SchemaKeyNames.IdOnlyKey, { id: key })) !== null && _b !== void 0 ? _b : undefined;
1778
1817
  value.identifiedObjectUUID = cimObjectUUID;
1779
- resultingDiagramObjects.push(value);
1818
+ if (!this.alreadyExported(nsgLKupplungRss.variantennr, key)) {
1819
+ resultingDiagramObjects.push(value);
1820
+ // this.addExportedDiagramObjectToGraph(nsgLKupplungRss.variantennr, key, value) // todo check if this causes problems
1821
+ }
1780
1822
  }
1781
1823
  return resultingDiagramObjects;
1782
1824
  });
@@ -2180,7 +2222,10 @@ class DLConverterI7 {
2180
2222
  const value = nodePointEntry[1];
2181
2223
  const cimObjectUUID = (_b = (_a = this.dbObjectKeyCimModelUuidGraph) === null || _a === void 0 ? void 0 : _a.getCimObjectIdFromDbKey(convert_graph_keys_1.i7SchemaKeyNames.IdOnlyKey, { id: key })) !== null && _b !== void 0 ? _b : undefined;
2182
2224
  value.identifiedObjectUUID = cimObjectUUID;
2183
- resultingDiagramObjects.push(value);
2225
+ if (!this.alreadyExported(nsgKpfeld.variantennr, key)) {
2226
+ resultingDiagramObjects.push(value);
2227
+ // this.addExportedDiagramObjectToGraph(nsgKpfeld.variantennr, key, value) // todo check if this causes problems
2228
+ }
2184
2229
  }
2185
2230
  return resultingDiagramObjects;
2186
2231
  });
@@ -2597,7 +2642,10 @@ class DLConverterI7 {
2597
2642
  const value = nodePointEntry[1];
2598
2643
  const cimObjectUUID = (_b = (_a = this.dbObjectKeyCimModelUuidGraph) === null || _a === void 0 ? void 0 : _a.getCimObjectIdFromDbKey(convert_graph_keys_1.i7SchemaKeyNames.IdOnlyKey, { id: key })) !== null && _b !== void 0 ? _b : undefined;
2599
2644
  value.identifiedObjectUUID = cimObjectUUID;
2600
- resultingDiagramObjects.push(value);
2645
+ if (!this.alreadyExported(nsgLKupplung.variantennr, key)) {
2646
+ resultingDiagramObjects.push(value);
2647
+ // this.addExportedDiagramObjectToGraph(nsgLKupplung.variantennr, key, value) // todo check if this causes problems
2648
+ }
2601
2649
  }
2602
2650
  return resultingDiagramObjects;
2603
2651
  });
@@ -2658,8 +2706,10 @@ class DLConverterI7 {
2658
2706
  diagramObjectName: `DiagramObject ${nsgLKondensator.lkondensator}`,
2659
2707
  identifiedObjectUUID: cimObjectUUID
2660
2708
  });
2661
- this.addExportedDiagramObjectToGraph(nsgLKondensator.variantennr, nsgLKondensator.id, doLKondensator);
2662
- resultingDiagramObjects.push(doLKondensator);
2709
+ if (!this.alreadyExported(nsgLKondensator.variantennr, nsgLKondensator.id)) {
2710
+ this.addExportedDiagramObjectToGraph(nsgLKondensator.variantennr, nsgLKondensator.id, doLKondensator);
2711
+ resultingDiagramObjects.push(doLKondensator);
2712
+ }
2663
2713
  /* ---------- ---------- ---------- */
2664
2714
  // BEGIN: Terminal-Export
2665
2715
  const anschlussanfTypedResult = this.dbObjectGraph.findTypedFirstByKey(convert_graph_keys_1.i7SchemaKeyNames.VariantenNrIdKey, {
@@ -3539,6 +3589,22 @@ class DLConverterI7 {
3539
3589
  }
3540
3590
  return [];
3541
3591
  }
3592
+ adjustTransformerTerminalPositions(terminalDiagramObject, transformerDiagramObject) {
3593
+ if (terminalDiagramObject.diagramObjectPoints.length === 2 && transformerDiagramObject.diagramObjectPoints.length === 1) {
3594
+ const firstDiagramObjectPoint = terminalDiagramObject.diagramObjectPoints[0];
3595
+ const secondDiagramObjectPoint = terminalDiagramObject.diagramObjectPoints[1];
3596
+ if (firstDiagramObjectPoint.xPosition === secondDiagramObjectPoint.xPosition
3597
+ && firstDiagramObjectPoint.yPosition === secondDiagramObjectPoint.yPosition) {
3598
+ const v1 = [firstDiagramObjectPoint.xPosition, firstDiagramObjectPoint.yPosition];
3599
+ const v2 = [transformerDiagramObject.diagramObjectPoints[0].xPosition, transformerDiagramObject.diagramObjectPoints[0].yPosition];
3600
+ const v = [v2[0] - v1[0], v2[1] - v1[1]];
3601
+ const lengthOfV = util_functions_1.DLUtilFunctions.euclideanMetric(v2, v1);
3602
+ util_functions_1.DLUtilFunctions.inplaceNormalize(v);
3603
+ firstDiagramObjectPoint.xPosition += v[0] * (lengthOfV * 0.3);
3604
+ firstDiagramObjectPoint.yPosition += v[1] * (lengthOfV * 0.3);
3605
+ }
3606
+ }
3607
+ }
3542
3608
  createTerminalDiagramObjectFromPoints(args) {
3543
3609
  if (args.points) {
3544
3610
  const terminalDiagramObject = util_functions_1.DLUtilFunctions.createDiagramObjectWithPoints([...args.points], null);
@@ -3555,6 +3621,14 @@ class DLConverterI7 {
3555
3621
  return terminalDiagramObject;
3556
3622
  }
3557
3623
  }
3624
+ alreadyExported(variantenNr, netzId) {
3625
+ if (variantenNr in this.exportedDiagramObjectsGraph) {
3626
+ if (netzId in this.exportedDiagramObjectsGraph[variantenNr]) {
3627
+ return this.exportedDiagramObjectsGraph[variantenNr][netzId] !== undefined;
3628
+ }
3629
+ }
3630
+ return false;
3631
+ }
3558
3632
  }
3559
3633
  exports.DLConverterI7 = DLConverterI7;
3560
3634
  DLConverterI7.testmode = false;