Skip to content

Commit b52eadf

Browse files
Sskw: modify column r (#1431)
1 parent e7a4d59 commit b52eadf

File tree

1 file changed

+15
-16
lines changed

1 file changed

+15
-16
lines changed

java/bundles/org.eclipse.set.feature.table.pt1/src/org/eclipse/set/feature/table/pt1/sskw/SskwTransformator.xtend

Lines changed: 15 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -662,27 +662,27 @@ class SskwTransformator extends AbstractPlanPro2TableModelTransformator {
662662
val elektrischerAntriebAnzahl = element.WKrGspKomponenten.map [
663663
kreuzung?.elektrischerAntriebAnzahl?.wert
664664
].filterNull.map[intValue]
665-
if (herzstueckAntriebe.exists[it > 0]) {
666-
fill(
667-
row,
668-
cols.getColumn(Herzstueck_Antriebe),
669-
element,
670-
[herzstueckAntriebe.fold(0, [s, a|s + a]).toString]
671-
)
672-
} else if (elektrischerAntriebAnzahl.exists[it > 0]) {
665+
val fillFunc = [ (W_Kr_Gsp_Komponente)=>BigInteger actuatorCount, (W_Kr_Gsp_Komponente)=>ENUMElektrischerAntriebLage actuatorPosition |
673666
fillMultiColorIterable(
674667
row,
675668
cols.getColumn(Herzstueck_Antriebe),
676669
element,
677670
[
678671
transformMultiColorContent(
679672
WKrGspKomponenten,
680-
[kreuzung?.elektrischerAntriebAnzahl?.wert],
681-
[kreuzung?.elektrischerAntriebLage?.wert]
673+
actuatorCount,
674+
actuatorPosition
682675
)
683676
],
684677
"+"
685678
)
679+
]
680+
if (herzstueckAntriebe.exists[it > 0]) {
681+
fillFunc.apply([zungenpaar?.herzstueckAntriebe?.wert], [null])
682+
} else if (elektrischerAntriebAnzahl.exists[it > 0]) {
683+
fillFunc.apply([kreuzung?.elektrischerAntriebAnzahl?.wert], [
684+
kreuzung?.elektrischerAntriebLage?.wert
685+
])
686686
} else {
687687
fill(
688688
row,
@@ -792,14 +792,13 @@ class SskwTransformator extends AbstractPlanPro2TableModelTransformator {
792792
createMultiColorContent
793793
val actuator = actuatorNumberSelector.apply(it)
794794
val noOfActuators = actuator !== null ? actuator.intValue : 0
795-
val position = it.getPosition(actuatorNumberSelector,
796-
actuatorPositionSelector)
795+
val position = it.getPosition(actuator, actuatorPositionSelector)
797796
if (austauschAntriebe?.wert === true) {
798797
multiColorContent.multiColorValue = noOfActuators.toString
799-
multiColorContent.stringFormat = '''%s«IF noOfActuators >0» («position»)«ENDIF»'''
798+
multiColorContent.stringFormat = '''%s«IF noOfActuators > 0 && position !== null» («position»)«ENDIF»'''
800799
} else {
801800
multiColorContent.multiColorValue = null
802-
multiColorContent.stringFormat = '''«noOfActuators»«IF noOfActuators > 0» («position»)«ENDIF»'''
801+
multiColorContent.stringFormat = '''«noOfActuators»«IF noOfActuators > 0 && position !== null» («position»)«ENDIF»'''
803802
}
804803

805804
return multiColorContent
@@ -808,10 +807,10 @@ class SskwTransformator extends AbstractPlanPro2TableModelTransformator {
808807

809808
private def String getPosition(
810809
W_Kr_Gsp_Komponente component,
811-
(W_Kr_Gsp_Komponente)=>BigInteger actuatorNumberSelector,
810+
BigInteger actuator,
812811
(W_Kr_Gsp_Komponente)=>ENUMElektrischerAntriebLage actuatorPositionSelector
813812
) {
814-
if (actuatorNumberSelector.apply(component) != BigInteger.ZERO) {
813+
if (actuator != BigInteger.ZERO) {
815814
return actuatorPositionSelector.apply(component).translate ?:
816815
"keine Lage"
817816
} else {

0 commit comments

Comments
 (0)