cpee 1.4.1 → 1.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (114) hide show
  1. checksums.yaml +5 -5
  2. data/cpee.gemspec +1 -1
  3. data/lib/cpee/controller.rb +7 -16
  4. data/lib/cpee/implementation.rb +1 -1
  5. data/server/handlerwrappers/default.rb +12 -1
  6. data/server/instances/1/properties.xml +122 -34
  7. data/server/instances/10/properties.xml +127 -141
  8. data/server/instances/11/properties.xml +179 -162
  9. data/server/instances/12/properties.xml +87 -163
  10. data/server/instances/13/properties.xml +2002 -131
  11. data/server/instances/14/properties.xml +2044 -9
  12. data/server/instances/15/properties.xml +2039 -8
  13. data/server/instances/16/properties.xml +2069 -8
  14. data/server/instances/17/properties.xml +2065 -11
  15. data/server/instances/18/properties.xml +2109 -10
  16. data/server/instances/19/properties.xml +90 -5
  17. data/server/instances/2/properties.xml +135 -10
  18. data/server/instances/20/properties.xml +9 -169
  19. data/server/instances/21/properties.xml +82 -122
  20. data/server/instances/22/properties.xml +2042 -53
  21. data/server/instances/23/properties.xml +68 -75
  22. data/server/instances/24/properties.xml +2033 -82
  23. data/server/instances/25/properties.xml +37 -121
  24. data/server/instances/26/properties.xml +9 -9
  25. data/server/instances/27/properties.xml +2044 -48
  26. data/server/instances/28/properties.xml +2058 -83
  27. data/server/instances/29/properties.xml +2072 -83
  28. data/server/instances/3/properties.xml +211 -76
  29. data/server/instances/30/properties.xml +112 -293
  30. data/server/instances/31/properties.xml +9 -332
  31. data/server/instances/32/properties.xml +65 -582
  32. data/server/instances/33/properties.xml +99 -113
  33. data/server/instances/34/properties.xml +183 -0
  34. data/server/instances/35/properties.xml +183 -0
  35. data/server/instances/36/properties.xml +185 -0
  36. data/server/instances/37/properties.xml +183 -0
  37. data/server/instances/38/properties.xml +183 -0
  38. data/server/instances/39/properties.xml +183 -0
  39. data/server/instances/4/properties.xml +9 -92
  40. data/server/instances/40/properties.xml +183 -0
  41. data/server/instances/41/properties.xml +183 -0
  42. data/server/instances/42/properties.xml +183 -0
  43. data/server/instances/43/properties.xml +183 -0
  44. data/server/instances/44/properties.xml +183 -0
  45. data/server/instances/45/properties.xml +185 -0
  46. data/server/instances/{670 → 46}/properties.xml +1 -1
  47. data/server/instances/47/properties.xml +185 -0
  48. data/server/instances/48/properties.xml +185 -0
  49. data/server/instances/49/properties.xml +185 -0
  50. data/server/instances/5/properties.xml +1505 -49
  51. data/server/instances/50/properties.xml +183 -0
  52. data/server/instances/51/properties.xml +183 -0
  53. data/server/instances/52/properties.xml +2129 -0
  54. data/server/instances/53/properties.xml +2129 -0
  55. data/server/instances/54/properties.xml +319 -0
  56. data/server/instances/55/properties.xml +2114 -0
  57. data/server/instances/56/properties.xml +2114 -0
  58. data/server/instances/57/properties.xml +2119 -0
  59. data/server/instances/58/properties.xml +2119 -0
  60. data/server/instances/59/properties.xml +2119 -0
  61. data/server/instances/6/properties.xml +11 -186
  62. data/server/instances/60/properties.xml +2119 -0
  63. data/server/instances/61/properties.xml +2114 -0
  64. data/server/instances/62/properties.xml +2116 -0
  65. data/server/instances/63/properties.xml +2116 -0
  66. data/server/instances/64/properties.xml +2116 -0
  67. data/server/instances/65/properties.xml +76 -0
  68. data/server/instances/66/properties.xml +97 -0
  69. data/server/instances/7/properties.xml +1691 -82
  70. data/server/instances/8/properties.xml +1738 -53
  71. data/server/instances/9/properties.xml +680 -95
  72. data/server/resources/base.xml +78 -0
  73. data/server/resources/test.rb +19 -0
  74. data/server/resources/test.xml +33 -0
  75. data/server/server.pid +1 -0
  76. data/server/test.rb +3 -0
  77. metadata +41 -41
  78. data/log/logs/1/test +0 -1
  79. data/server/instances/10/notifications/182434032285ca1d06a8b6554b8889c8/consumer-secret +0 -1
  80. data/server/instances/10/notifications/182434032285ca1d06a8b6554b8889c8/producer-secret +0 -1
  81. data/server/instances/10/notifications/182434032285ca1d06a8b6554b8889c8/subscription.xml +0 -23
  82. data/server/instances/10/notifications/512a3785631a5245dbb45fa150ea72ed/consumer-secret +0 -1
  83. data/server/instances/10/notifications/512a3785631a5245dbb45fa150ea72ed/producer-secret +0 -1
  84. data/server/instances/10/notifications/512a3785631a5245dbb45fa150ea72ed/subscription.xml +0 -6
  85. data/server/instances/313/notifications/crisp/consumer-secret +0 -1
  86. data/server/instances/313/notifications/crisp/producer-secret +0 -1
  87. data/server/instances/313/notifications/crisp/subscription.xml +0 -7
  88. data/server/instances/313/notifications/logging/consumer-secret +0 -1
  89. data/server/instances/313/notifications/logging/producer-secret +0 -1
  90. data/server/instances/313/notifications/logging/subscription.xml +0 -7
  91. data/server/instances/313/notifications/logging_yaml/consumer-secret +0 -1
  92. data/server/instances/313/notifications/logging_yaml/producer-secret +0 -1
  93. data/server/instances/313/notifications/logging_yaml/subscription.xml +0 -7
  94. data/server/instances/313/properties.xml +0 -524
  95. data/server/instances/662/notifications/crisp/consumer-secret +0 -1
  96. data/server/instances/662/notifications/crisp/producer-secret +0 -1
  97. data/server/instances/662/notifications/crisp/subscription.xml +0 -7
  98. data/server/instances/662/notifications/logging/consumer-secret +0 -1
  99. data/server/instances/662/notifications/logging/producer-secret +0 -1
  100. data/server/instances/662/notifications/logging/subscription.xml +0 -7
  101. data/server/instances/662/notifications/logging_yaml/consumer-secret +0 -1
  102. data/server/instances/662/notifications/logging_yaml/producer-secret +0 -1
  103. data/server/instances/662/notifications/logging_yaml/subscription.xml +0 -7
  104. data/server/instances/662/properties.xml +0 -427
  105. data/server/instances/663/properties.xml +0 -31
  106. data/server/instances/664/properties.xml +0 -425
  107. data/server/instances/665/properties.xml +0 -425
  108. data/server/instances/666/properties.xml +0 -427
  109. data/server/instances/667/properties.xml +0 -427
  110. data/server/instances/668/properties.xml +0 -425
  111. data/server/instances/669/properties.xml +0 -425
  112. data/server/instances/671/properties.xml +0 -158
  113. data/server/instances/672/properties.xml +0 -199
  114. data/server/instances/673/properties.xml +0 -52
@@ -1,68 +1,1039 @@
1
1
  <properties xmlns="http://riddl.org/ns/common-patterns/properties/1.0">
2
2
  <attributes>
3
- <uuid>908b9dfa-bf1e-4c79-8f3d-f5b037928a61</uuid>
4
- <info>Linear</info>
3
+ <uuid>c12bf0e4-1554-4172-8ceb-ddb64f6d5ebc</uuid>
4
+ <info>IHS1</info>
5
5
  <modeltype>CPEE</modeltype>
6
- <theme>default</theme>
6
+ <theme>labels</theme>
7
+ <customer>OEBB</customer>
8
+ <status>development</status>
7
9
  </attributes>
8
- <state>finished</state>
10
+ <state>stopped</state>
9
11
  <handlerwrapper>DefaultHandlerWrapper</handlerwrapper>
10
- <positions/>
12
+ <positions>
13
+ <a9>after</a9>
14
+ </positions>
11
15
  <dataelements>
12
- <x>a2,a3,</x>
16
+ <strategie>IS1</strategie>
17
+ <schaedigungen>["X","X","X"]</schaedigungen>
18
+ <taetigkeiten>["Drehen","UT Scheibe","Austrittskontrolle","Lackierung","Versandfertig","Qualitaetsfreigabe","Montage Deckel","Radsatzwelle drehen"]</taetigkeiten>
19
+ <presskraftdiagramm>gut</presskraftdiagramm>
20
+ <wellenstatus>gut</wellenstatus>
21
+ <geometriedaten_radsatz>{"X":1,"Y":2,"Z":3}</geometriedaten_radsatz>
22
+ <geometriedaten_radsatz_neu/>
13
23
  </dataelements>
14
24
  <endpoints>
15
- <timeout>http://gruppe.wst.univie.ac.at/~mangler/services/timeout.php</timeout>
25
+ <timeout>http://localhost/customers/oebb/services/timeout.php</timeout>
26
+ <init>http://localhost/customers/oebb/services/oebb.php?_taetigkeiten=taetigkeiten.txt&amp;strategie=IS1&amp;_schaedigungen=schaedigungen.txt&amp;_tauschgruppe=tauschgruppe.txt&amp;lagerlaufleistung=2.1</init>
27
+ <fix>http://localhost/customers/oebb/services/oebb.php</fix>
28
+ <eigen>http://localhost/customers/oebb/services/oebb.php?_taetigkeiten=addeigen.txt</eigen>
29
+ <drehen>http://localhost/customers/oebb/services/oebb.php?_taetigkeiten=adddrehen.txt&amp;_geometriedaten=geometriedaten.txt&amp;_geometriedaten_neu=geometriedatenneu.txt</drehen>
30
+ <ut>http://localhost/customers/oebb/services/oebb.php?_taetigkeiten=ut.txt</ut>
31
+ <kerb>http://localhost/customers/oebb/services/oebb.php</kerb>
32
+ <lageraufbereitung>http://localhost/customers/oebb/services/timeout.php</lageraufbereitung>
33
+ <aufpressen>http://localhost/customers/oebb/services/oebb.php?presskraftdiagramm=schlecht&amp;wellenstatus=gut</aufpressen>
34
+ <abpressen>http://localhost/customers/oebb/services/oebb.php?status=lagersitz%20ok</abpressen>
35
+ <aufpressen_gut>http://localhost/customers/oebb/services/oebb.php?presskraftdiagramm=gut&amp;wellenstatus=gut</aufpressen_gut>
16
36
  </endpoints>
17
- <dsl>call :a1, :timeout, parameters: { :label =&gt; "Step 1", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 2)] }, finalize: &lt;&lt;-END
18
- data.x += "a1,"
37
+ <dsl>call :a1, :init, parameters: { :label =&gt; "Identifikation 110", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :radsatznummer, :value =&gt; nil), ⭐(:name =&gt; :wellentyp, :value =&gt; nil), ⭐(:name =&gt; :lagerbauart, :value =&gt; nil), ⭐(:name =&gt; :tauschgruppe, :value =&gt; nil), ⭐(:name =&gt; :eigentuemer, :value =&gt; nil), ⭐(:name =&gt; :regelwerk, :value =&gt; nil), ⭐(:name =&gt; :auftragsnummer, :value =&gt; nil), ⭐(:name =&gt; :mindeststragie, :value =&gt; nil), ⭐(:name =&gt; :technische_weisungen, :value =&gt; nil), ⭐(:name =&gt; :schadcodes, :value =&gt; nil), ⭐(:name =&gt; :lagerlaufleistung, :value =&gt; "in jahre"), ⭐(:name =&gt; :lagerlaufleistung, :value =&gt; "stempel am lager in zukunft aus sam")] }, finalize: &lt;&lt;-END
38
+ data.strategie = result['strategie'] # IHS 123
39
+ # Liste der Schadcodes
40
+ data.schaedigungen = result['schaedigungen']
41
+ # Manganschweissen, Gelber Anstrich, technische_weisungen
42
+ data.taetigkeiten = result['taetigkeiten']
43
+ data.lagerlaufleistung = result["lagerlaufleistung"].to_f
44
+ data.tauschgruppe = result["tauschgruppe"]
19
45
  END
20
- call :a2, :timeout, parameters: { :label =&gt; "Step 2", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 4)] }, finalize: &lt;&lt;-END
21
- data.x += "a2,"
46
+ choose :exclusive do
47
+ alternative test{data.taetigkeiten.grep(/Demontage Deckel/) &amp;&amp; data.taetigkeiten.grep(/Demontage Deckel/).length == 1} do
48
+ choose :exclusive do
49
+ alternative test{data.lagerbauart != 'Deckel mit Loch'} do
50
+ call :a2, :fix, parameters: { :label =&gt; "Lagerdeckeldemontage 130", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :deckel, :value =&gt; "true"), ⭐(:name =&gt; :lager, :value =&gt; "false"), ⭐(:name =&gt; :anbauteile, :value =&gt; "true")] }, finalize: &lt;&lt;-END
51
+ data.taetigkeiten &lt;&lt; "Montage Deckel"
52
+ data.taetigkeiten.delete("Demontage Deckel")
53
+ END
54
+ end
55
+ end
56
+ end
57
+ otherwise do
58
+ call :a16, nil, parameters: { :label =&gt; "Lagerdemontage 130", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :deckel, :value =&gt; "true"), ⭐(:name =&gt; :lager, :value =&gt; "true"), ⭐(:name =&gt; :anbauteile, :value =&gt; "true"), ⭐(:name =&gt; :details, :value =&gt; nil)] }, finalize: &lt;&lt;-END
59
+ # ab IS1+IL aufwaerts
60
+ # data.details ist alles unten
61
+ data.wellenhersteller
62
+ data.wellenmaterial
63
+ data.schmelze
64
+ data.charge
65
+ data.wellenherstelldatum
66
+ data.erstfueger
67
+ data.erstfuegerdatum
68
+ data.wellennummer
69
+ data.lagerherstelldatum
70
+ data.lagerlaufleistung
71
+ data.lhm_korbnummer_rechts
72
+ data.lhm_korbnummer_links
73
+ # gibt der mitarbeiter ein, wird verglichen
74
+ END
75
+ choose :exclusive do
76
+ alternative test{data.radsatznummer != data.wellennummer} do
77
+ call :a4, nil, parameters: { :label =&gt; "Datenkonsistenz herstellen, eventuelle Barcode ausdrucken", :method =&gt; :post, :arguments =&gt; nil }
78
+ end
79
+ end
80
+ choose :exclusive do
81
+ alternative test{data.lagertyp == "kartuschenlager" &amp;&amp; data.lagerherstelldatum &lt; data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung} do
82
+ call :a6, nil, parameters: { :label =&gt; "Externe Lageraufbereitung", :method =&gt; :post, :arguments =&gt; nil }
83
+ end
84
+ alternative test{data.lagertyp == "kartuschenlager" &amp;&amp; data.lagerherstelldatum &gt;= data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung} do
85
+ call :a5, nil, parameters: { :label =&gt; "Lager Verschrotten", :method =&gt; :post, :arguments =&gt; nil }
86
+ end
87
+ otherwise do
88
+ manipulate :a42, &lt;&lt;-END
89
+ data.taetigkeiten &lt;&lt; 'Lageraufbereitung'
90
+ END
91
+ end
92
+ end
93
+ end
94
+ end
95
+ parallel :wait =&gt; -1 do
96
+ parallel_branch do ||
97
+ loop post_test{data.taetigkeiten.include? 'Eigenspannungspruefung'} do
98
+ call :a3, :eigen, parameters: { :label =&gt; "Eigenspannungspruefung 140", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :werkstoff, :value =&gt; nil), ⭐(:name =&gt; :bauform_scheibe, :value =&gt; nil), ⭐(:name =&gt; :pruefprogramm, :value =&gt; nil)] }, finalize: &lt;&lt;-END
99
+ data.eigenspannungswerte
100
+ # Radsatz regenerieren falls die Station das meldet
101
+ data.taetigkeiten &lt;&lt; "Radsatz regenerieren"
102
+ data.taetigkeiten.delete("Eigenspannungspruefung")
103
+ END
104
+ choose :exclusive do
105
+ alternative test{data.taetigkeiten.include? 'Radsatz regenerieren'} do
106
+ call :a20, :timeout, parameters: { :label =&gt; "Radsatz regenerieren", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }, finalize: &lt;&lt;-END
107
+ data.taetigkeiten.delete("Radsatz regenerieren")
108
+ END
109
+ end
110
+ end
111
+ end
112
+ choose :exclusive do
113
+ alternative test{data.taetigkeiten.include? 'Abpressen'} do
114
+ manipulate :a19
115
+ loop post_test{data.wuchten_status == 'schlecht'} do
116
+ loop post_test{data.wellenstatus == "beschaedigt"} do
117
+ call :a22, :abpressen, parameters: { :label =&gt; "Radscheibe abpressen 510/511", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
118
+ if result['status'] == "lagersitz kaputt"
119
+ # z.b. weil lagersitz im arsch
120
+ data.taetigkeiten.clear
121
+ end
122
+ data.taetigkeiten &lt;&lt; "Radsatzwelle drehen"
123
+ END
124
+ call :a23, :timeout, parameters: { :label =&gt; "Radsatzwelle drehen 520/521", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
125
+ call :a24, :timeout, parameters: { :label =&gt; "MT Welle unbescheibt prüfen 535", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
126
+ call :a25, :timeout, parameters: { :label =&gt; "Senkrechtbohrwerk 530/531", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }, update: &lt;&lt;-END
127
+ # ich hab radscheibe demontiert, alle
128
+ # die fuer die wellentype zulässig sind
129
+ # dürfen wieder rauf
130
+ # (verbrauchsmaterial liste)
131
+ # wellentype -&gt; zulässige materialnummer
132
+ # materialnummern können bremsscheibe, radscheibe oder
133
+ # radbremsscheibe sein. Mehrere zulässige.
134
+ END
135
+ call :a26, :aufpressen, parameters: { :label =&gt; "Radscheibe aufpressen 516/510", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
136
+ data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht"
137
+ data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"
138
+ END
139
+ loop pre_test{data.presskraftdiagramm == "schlecht" &amp;&amp; data.wellenstatus != "beschaedigt"} do
140
+ call :a27, :abpressen, parameters: { :label =&gt; "Radscheibe abpressen 510/511", :method =&gt; :post, :arguments =&gt; nil }
141
+ call :a28, :aufpressen_gut, parameters: { :label =&gt; "Radscheibe aufpressen 516/510", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
142
+ data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht"
143
+ data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"
144
+ END
145
+ end
146
+ manipulate :a29, &lt;&lt;-END
147
+ data.taetigkeiten.delete("Abpressen")
148
+ END
149
+ end
150
+ choose :exclusive do
151
+ alternative test{data.tauschgruppe == "ich habe eine bremsscheibe"} do
152
+ call :a8, nil, parameters: { :label =&gt; "Rad und Bremsscheibe messen 320", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END
153
+ data.geometriedaten_radsatz = result['geometriedaten']
154
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false
155
+ END
156
+ end
157
+ otherwise do
158
+ call :a9, :drehen, parameters: { :label =&gt; "Radscheibe messen 321", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END
159
+ data.geometriedaten_radsatz = result['geometriedaten']
160
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false
161
+ END
162
+ end
163
+ end
164
+ choose :exclusive do
165
+ alternative test{data.geometriedata_radsatz_neu == false} do
166
+ call :a30, :worklist_b, parameters: { :label =&gt; "Lesen der Barcodes der gebrauchten Scheiben", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
167
+ # lesen anhand barcode
168
+ data.eigenspannunswerte = result.eigenspannungswerte
169
+ data.taetigkeiten &lt;&lt; "UT Scheibe"
170
+ END
171
+ end
172
+ end
173
+ choose :exclusive do
174
+ alternative test{data.tauschgruppe == 'ich bin ein zug mit personen drinn' || data.tauschgruppe == 'ich bin ein güterzug mit bremsscheigen'} do
175
+ call :a21, nil, parameters: { :label =&gt; "Wuchten 550", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
176
+ # sicher gramm pro meter, nachgeschaut
177
+ data.wucht_gramm_pro_meter = result.gramm_pro_meter
178
+ if data.wucht_gramm_pro_meter != data.tausch_gruppe.wucht_gramm_pro_meter
179
+ data.wucht_status == 'schlecht'
180
+ else
181
+ data.wucht_status == 'gut'
182
+ end
183
+ END
184
+ end
185
+ end
186
+ end
187
+ end
188
+ end
189
+ choose :exclusive do
190
+ alternative test{data.lagerlaufleistung &gt; data.tauschgruppe["lagerlaufleistung"] || data.schaedigungen.include?("defekter innenring") || data.taetigkeiten.include?("Demontage Innenringe")} do
191
+ call :a32, nil, parameters: { :label =&gt; "Demontage Innenringe 420", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
192
+ # innenringe montieren falls welche drauf waren
193
+ data.taetigkeiten &lt;&lt; result.taetigkeiten
194
+ END
195
+ call :a31, nil, parameters: { :label =&gt; "Radsatzwelle Bürsten 490", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
196
+ # eventuell sandstrahlen
197
+ data.taetigkeiten &lt;&lt; result.taetigkeiten
198
+ END
199
+ choose :exclusive do
200
+ alternative test{data.taetigkeiten.include? 'Sandstrahlen'} do
201
+ call :a33, nil, parameters: { :label =&gt; "Sandstrahlen 480", :method =&gt; :post, :arguments =&gt; nil }
202
+ end
203
+ end
204
+ call :a34, nil, parameters: { :label =&gt; "UT Radsatzwelle 430", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
205
+ data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht
206
+ END
207
+ loop post_test{data.innenringstatus != 'ok'} do
208
+ loop post_test{data.radsatzwelle_status == 'schlecht'} do
209
+ call :a38, nil, parameters: { :label =&gt; "Radsatzwelle drehen HS4 595", :method =&gt; :post, :arguments =&gt; nil }
210
+ call :a37, nil, parameters: { :label =&gt; "UT Radsatzwelle 430", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
211
+ data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht
212
+ END
213
+ end
214
+ call :a36, nil, parameters: { :label =&gt; "Innenringmontage 190", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
215
+ data.innenring_status = result["innnenring_status"] # ok, beschaedigung, untermass
216
+ END
217
+ end
218
+ call :a41, nil, parameters: { :label =&gt; "MT Allg. Prüfung 170", :method =&gt; :post, :arguments =&gt; nil }
219
+ call :a18, nil, parameters: { :label =&gt; "UT Scheibe 630", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
220
+ if result.ut_scheibe_status != 'gut'
221
+ data.taetigkeiten &lt;&lt; 'Drehen'
222
+ end
223
+ END
224
+ end
225
+ end
226
+ loop post_test{data.taetigkeiten.include? 'Drehen'} do
227
+ choose :exclusive do
228
+ alternative test{data.tauschgruppe == "ich habe eine bremsscheibe"} do
229
+ call :a39, nil, parameters: { :label =&gt; "Rad und Bremsscheibe drehen 320", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END
230
+ data.geometriedaten_radsatz = result['geometriedaten']
231
+ # eventuell abpressen
232
+ data.taetigkeiten &lt;&lt; result.taetigkeiten
233
+ END
234
+ end
235
+ otherwise do
236
+ call :a40, :drehen, parameters: { :label =&gt; "Radscheibe drehen 321", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :wellentyp, :value =&gt; nil)] }, finalize: &lt;&lt;-END
237
+ data.geometriedaten_radsatz = result['geometriedaten']
238
+ END
239
+ end
240
+ end
241
+ choose :exclusive do
242
+ alternative test{data.taetigkeiten.include? 'Kerbschleifen'} do
243
+ call :a17, :kerb, parameters: { :label =&gt; "Kerbschleifen 240", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
244
+ data.taetigkeiten.delete("Kerbschleifen")
245
+ # eventuell abpressen
246
+ data.taetigkeiten &lt;&lt; result.taetigkeiten
247
+ END
248
+ end
249
+ end
250
+ call :a10, :ut, parameters: { :label =&gt; "UT Scheibe 630", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
251
+ data.taetigkeiten.delete("UT Scheibe")
252
+ if endpoints.ut != "http://localhost/customers/oebb/services/oebb.php"
253
+ data.taetigkeiten = data.taetigkeiten + result['taetigkeiten']
254
+ end
255
+ endpoints.ut = "http://localhost/customers/oebb/services/oebb.php"
256
+ END
257
+ end
258
+ end
259
+ parallel_branch do ||
260
+ call :a7, :lageraufbereitung, parameters: { :label =&gt; "Lageraufbereitung 680", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; "2")] }
261
+ end
262
+ end
263
+ call :a11, :fix, parameters: { :label =&gt; "Lagermontage 640", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :lagerbauart, :value =&gt; nil)] }, finalize: &lt;&lt;-END
264
+ data.taetigkeiten.delete("Montage Deckel")
22
265
  END
23
- call :a3, :timeout, parameters: { :label =&gt; "Step 3", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :timeout, :value =&gt; 4)] }, finalize: &lt;&lt;-END
24
- data.x += "a3,"
266
+ call :a12, :fix, parameters: { :label =&gt; "Austrittskontrolle 650", :method =&gt; :post, :arguments =&gt; nil }, finalize: &lt;&lt;-END
267
+ data.taetigkeiten.delete("Austrittskontrolle")
25
268
  END
269
+ call :a13, :fix, parameters: { :label =&gt; "Lackierung 675", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :strategie, :value =&gt; nil)] }, finalize: &lt;&lt;-END
270
+ data.taetigkeiten.delete("Lackierung")
271
+ END
272
+ call :a14, :fix, parameters: { :label =&gt; "Versandfertig 690", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :technische_weisungen, :value =&gt; nil), ⭐(:name =&gt; :regelwerk, :value =&gt; nil)] }, finalize: &lt;&lt;-END
273
+ data.taetigkeiten.delete("Versandfertig")
274
+ END
275
+ call :a15, :fix, parameters: { :label =&gt; "Qualitaetsfreigabe 710", :method =&gt; :post, :arguments =&gt; [⭐(:name =&gt; :regelwerk, :value =&gt; nil), ⭐(:name =&gt; :technische_weisungen, :value =&gt; nil)] }, finalize: &lt;&lt;-END
276
+ data.taetigkeiten.delete("Qualitaetsfreigabe")
277
+ END
278
+ choose :exclusive do
279
+ alternative test{data.taetigkeiten.include? "anbauteile montieren"} do
280
+ call :a35, nil, parameters: { :label =&gt; "Anbauteilmontage 670", :method =&gt; :post, :arguments =&gt; nil }
281
+ end
282
+ end
26
283
  </dsl>
27
284
  <dslx>
28
285
  <description xmlns="http://cpee.org/ns/description/1.0">
29
- <!--{{{-->
30
- <call id="a1" endpoint="timeout">
286
+ <call id="a1" endpoint="init">
287
+ <parameters>
288
+ <label>Identifikation 110</label>
289
+ <method>:post</method>
290
+ <arguments>
291
+ <radsatznummer/>
292
+ <wellentyp/>
293
+ <lagerbauart/>
294
+ <tauschgruppe/>
295
+ <eigentuemer/>
296
+ <regelwerk/>
297
+ <auftragsnummer/>
298
+ <mindeststragie/>
299
+ <technische_weisungen/>
300
+ <schadcodes/>
301
+ <lagerlaufleistung>in jahre</lagerlaufleistung>
302
+ <lagerlaufleistung>stempel am lager in zukunft aus sam</lagerlaufleistung>
303
+ </arguments>
304
+ </parameters>
305
+ <finalize output="result">data.strategie = result['strategie'] # IHS 123
306
+
307
+ # Liste der Schadcodes
308
+ data.schaedigungen = result['schaedigungen']
309
+
310
+ # Manganschweissen, Gelber Anstrich, technische_weisungen
311
+ data.taetigkeiten = result['taetigkeiten']
312
+
313
+ data.lagerlaufleistung = result["lagerlaufleistung"].to_f
314
+ data.tauschgruppe = result["tauschgruppe"]</finalize>
315
+ <update output="result"/>
316
+ <_timing>
317
+ <_timing_min/>
318
+ <_timing_max/>
319
+ <_timing_avg/>
320
+ </_timing>
321
+ <_notes>
322
+ <_notes_general/>
323
+ <_notes_output/>
324
+ <_attachments/>
325
+ </_notes>
326
+ </call>
327
+ <choose mode="exclusive">
328
+ <alternative condition="data.taetigkeiten.grep(/Demontage Deckel/) &amp;&amp; data.taetigkeiten.grep(/Demontage Deckel/).length == 1">
329
+ <choose mode="exclusive">
330
+ <alternative condition="data.lagerbauart != 'Deckel mit Loch'">
331
+ <call id="a2" endpoint="fix">
332
+ <parameters>
333
+ <label>Lagerdeckeldemontage 130</label>
334
+ <method>:post</method>
335
+ <arguments>
336
+ <deckel>true</deckel>
337
+ <lager>false</lager>
338
+ <anbauteile>true</anbauteile>
339
+ </arguments>
340
+ </parameters>
341
+ <finalize output="result">data.taetigkeiten &lt;&lt; "Montage Deckel"
342
+ data.taetigkeiten.delete("Demontage Deckel")</finalize>
343
+ <update output="result"/>
344
+ </call>
345
+ </alternative>
346
+ <otherwise/>
347
+ </choose>
348
+ </alternative>
349
+ <otherwise>
350
+ <call id="a16" endpoint="">
351
+ <parameters>
352
+ <label>Lagerdemontage 130</label>
353
+ <method>:post</method>
354
+ <arguments>
355
+ <deckel>true</deckel>
356
+ <lager>true</lager>
357
+ <anbauteile>true</anbauteile>
358
+ <details/>
359
+ </arguments>
360
+ </parameters>
361
+ <finalize output="result"># ab IS1+IL aufwaerts
362
+ # data.details ist alles unten
363
+
364
+ data.wellenhersteller
365
+ data.wellenmaterial
366
+ data.schmelze
367
+ data.charge
368
+ data.wellenherstelldatum
369
+ data.erstfueger
370
+ data.erstfuegerdatum
371
+ data.wellennummer
372
+ data.lagerherstelldatum
373
+ data.lagerlaufleistung
374
+ data.lhm_korbnummer_rechts
375
+ data.lhm_korbnummer_links
376
+
377
+ # gibt der mitarbeiter ein, wird verglichen</finalize>
378
+ <update output="result"/>
379
+ </call>
380
+ <choose mode="exclusive">
381
+ <alternative condition="data.radsatznummer != data.wellennummer">
382
+ <call id="a4" endpoint="">
383
+ <parameters>
384
+ <label>Datenkonsistenz herstellen, eventuelle Barcode ausdrucken</label>
385
+ <method>:post</method>
386
+ <arguments/>
387
+ </parameters>
388
+ <finalize output="result"/>
389
+ <update output="result"/>
390
+ </call>
391
+ </alternative>
392
+ <otherwise/>
393
+ </choose>
394
+ <choose mode="exclusive">
395
+ <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerherstelldatum &lt; data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung">
396
+ <call id="a6" endpoint="">
397
+ <parameters>
398
+ <label>Externe Lageraufbereitung</label>
399
+ <method>:post</method>
400
+ <arguments/>
401
+ </parameters>
402
+ </call>
403
+ </alternative>
404
+ <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerherstelldatum &gt;= data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung">
405
+ <call id="a5" endpoint="">
406
+ <parameters>
407
+ <label>Lager Verschrotten</label>
408
+ <method>:post</method>
409
+ <arguments/>
410
+ </parameters>
411
+ </call>
412
+ </alternative>
413
+ <otherwise>
414
+ <manipulate id="a42">data.taetigkeiten &lt;&lt; 'Lageraufbereitung'</manipulate>
415
+ </otherwise>
416
+ </choose>
417
+ </otherwise>
418
+ </choose>
419
+ <parallel wait="-1">
420
+ <parallel_branch pass="" local="">
421
+ <loop mode="post_test" condition="data.taetigkeiten.include? 'Eigenspannungspruefung'">
422
+ <call id="a3" endpoint="eigen">
423
+ <parameters>
424
+ <label>Eigenspannungspruefung 140</label>
425
+ <method>:post</method>
426
+ <arguments>
427
+ <werkstoff/>
428
+ <bauform_scheibe/>
429
+ <pruefprogramm/>
430
+ </arguments>
431
+ </parameters>
432
+ <finalize output="result">data.eigenspannungswerte
433
+ # Radsatz regenerieren falls die Station das meldet
434
+ data.taetigkeiten &lt;&lt; "Radsatz regenerieren"
435
+ data.taetigkeiten.delete("Eigenspannungspruefung")</finalize>
436
+ <update output="result"/>
437
+ <_notes>
438
+ <_notes_general/>
439
+ </_notes>
440
+ </call>
441
+ <choose mode="exclusive">
442
+ <alternative condition="data.taetigkeiten.include? 'Radsatz regenerieren'">
443
+ <call id="a20" endpoint="timeout">
444
+ <parameters>
445
+ <label>Radsatz regenerieren</label>
446
+ <method>:post</method>
447
+ <arguments>
448
+ <timeout>2</timeout>
449
+ </arguments>
450
+ </parameters>
451
+ <finalize output="result">data.taetigkeiten.delete("Radsatz regenerieren")</finalize>
452
+ <update output="result"/>
453
+ <_timing>
454
+ <_timing_min/>
455
+ <_timing_max/>
456
+ <_timing_avg/>
457
+ </_timing>
458
+ <_notes>
459
+ <_notes_general/>
460
+ <_notes_output/>
461
+ <_attachments/>
462
+ </_notes>
463
+ </call>
464
+ </alternative>
465
+ <otherwise/>
466
+ </choose>
467
+ </loop>
468
+ <choose mode="exclusive">
469
+ <alternative condition="data.taetigkeiten.include? 'Abpressen'">
470
+ <manipulate id="a19"/>
471
+ <loop mode="post_test" condition="data.wuchten_status == 'schlecht'">
472
+ <loop mode="post_test" condition="data.wellenstatus == &quot;beschaedigt&quot;">
473
+ <call id="a22" endpoint="abpressen">
474
+ <parameters>
475
+ <label>Radscheibe abpressen 510/511</label>
476
+ <method>:post</method>
477
+ <arguments/>
478
+ </parameters>
479
+ <finalize output="result">if result['status'] == "lagersitz kaputt"
480
+ # z.b. weil lagersitz im arsch
481
+ data.taetigkeiten.clear
482
+ end
483
+
484
+ data.taetigkeiten &lt;&lt; "Radsatzwelle drehen"</finalize>
485
+ <update output="result"/>
486
+ <_timing>
487
+ <_timing_min/>
488
+ <_timing_max/>
489
+ <_timing_avg/>
490
+ </_timing>
491
+ <_notes>
492
+ <_notes_general/>
493
+ <_notes_output/>
494
+ <_attachments/>
495
+ </_notes>
496
+ </call>
497
+ <call id="a23" endpoint="timeout">
498
+ <parameters>
499
+ <label>Radsatzwelle drehen 520/521</label>
500
+ <method>:post</method>
501
+ <arguments>
502
+ <timeout>2</timeout>
503
+ </arguments>
504
+ </parameters>
505
+ <finalize output="result"/>
506
+ <update output="result"/>
507
+ <_timing>
508
+ <_timing_min/>
509
+ <_timing_max/>
510
+ <_timing_avg/>
511
+ </_timing>
512
+ <_notes>
513
+ <_notes_general/>
514
+ <_notes_output/>
515
+ <_attachments/>
516
+ </_notes>
517
+ </call>
518
+ <call id="a24" endpoint="timeout">
519
+ <parameters>
520
+ <label>MT Welle unbescheibt prüfen 535</label>
521
+ <method>:post</method>
522
+ <arguments>
523
+ <timeout>2</timeout>
524
+ </arguments>
525
+ </parameters>
526
+ <finalize output="result"/>
527
+ <update output="result"/>
528
+ <_timing>
529
+ <_timing_min/>
530
+ <_timing_max/>
531
+ <_timing_avg/>
532
+ </_timing>
533
+ <_notes>
534
+ <_notes_general>Wenn status schlecht, zum drehen
535
+ Wenn mindestdruchmesser erreicht, schrott</_notes_general>
536
+ <_notes_output/>
537
+ <_attachments/>
538
+ </_notes>
539
+ </call>
540
+ <call id="a25" endpoint="timeout">
541
+ <parameters>
542
+ <label>Senkrechtbohrwerk 530/531</label>
543
+ <method>:post</method>
544
+ <arguments>
545
+ <timeout>2</timeout>
546
+ </arguments>
547
+ </parameters>
548
+ <finalize output="result"/>
549
+ <update output="result"># ich hab radscheibe demontiert, alle
550
+ # die fuer die wellentype zulässig sind
551
+ # dürfen wieder rauf
552
+ # (verbrauchsmaterial liste)
553
+ # wellentype -&gt; zulässige materialnummer
554
+ # materialnummern können bremsscheibe, radscheibe oder
555
+ # radbremsscheibe sein. Mehrere zulässige.</update>
556
+ <_timing>
557
+ <_timing_min/>
558
+ <_timing_max/>
559
+ <_timing_avg/>
560
+ </_timing>
561
+ <_notes>
562
+ <_notes_general/>
563
+ <_notes_output/>
564
+ <_attachments/>
565
+ </_notes>
566
+ </call>
567
+ <call id="a26" endpoint="aufpressen">
568
+ <parameters>
569
+ <label>Radscheibe aufpressen 516/510</label>
570
+ <method>:post</method>
571
+ <arguments/>
572
+ </parameters>
573
+ <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht"
574
+ data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize>
575
+ <update output="result"/>
576
+ <_timing>
577
+ <_timing_min/>
578
+ <_timing_max/>
579
+ <_timing_avg/>
580
+ </_timing>
581
+ <_notes>
582
+ <_notes_general/>
583
+ <_notes_output/>
584
+ <_attachments/>
585
+ </_notes>
586
+ </call>
587
+ <loop mode="pre_test" condition="data.presskraftdiagramm == &quot;schlecht&quot; &amp;&amp; data.wellenstatus != &quot;beschaedigt&quot;">
588
+ <call id="a27" endpoint="abpressen">
589
+ <parameters>
590
+ <label>Radscheibe abpressen 510/511</label>
591
+ <method>:post</method>
592
+ <arguments/>
593
+ </parameters>
594
+ <finalize output="result"/>
595
+ <update output="result"/>
596
+ <_timing>
597
+ <_timing_min/>
598
+ <_timing_max/>
599
+ <_timing_avg/>
600
+ </_timing>
601
+ <_notes>
602
+ <_notes_general/>
603
+ <_notes_output/>
604
+ <_attachments/>
605
+ </_notes>
606
+ </call>
607
+ <call id="a28" endpoint="aufpressen_gut">
608
+ <parameters>
609
+ <label>Radscheibe aufpressen 516/510</label>
610
+ <method>:post</method>
611
+ <arguments/>
612
+ </parameters>
613
+ <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht"
614
+ data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize>
615
+ <update output="result"/>
616
+ <_timing>
617
+ <_timing_min/>
618
+ <_timing_max/>
619
+ <_timing_avg/>
620
+ </_timing>
621
+ <_notes>
622
+ <_notes_general/>
623
+ <_notes_output/>
624
+ <_attachments/>
625
+ </_notes>
626
+ </call>
627
+ </loop>
628
+ <manipulate id="a29">data.taetigkeiten.delete("Abpressen")</manipulate>
629
+ </loop>
630
+ <choose mode="exclusive">
631
+ <alternative condition="data.tauschgruppe == &quot;ich habe eine bremsscheibe&quot;">
632
+ <call id="a8" endpoint="">
633
+ <parameters>
634
+ <label>Rad und Bremsscheibe messen 320</label>
635
+ <method>:post</method>
636
+ <arguments>
637
+ <wellentyp/>
638
+ </arguments>
639
+ </parameters>
640
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
641
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
642
+ <update output="result"/>
643
+ <_notes>
644
+ <_notes_general/>
645
+ </_notes>
646
+ </call>
647
+ </alternative>
648
+ <otherwise>
649
+ <call id="a9" endpoint="drehen">
650
+ <parameters>
651
+ <label>Radscheibe messen 321</label>
652
+ <method>:post</method>
653
+ <arguments>
654
+ <wellentyp/>
655
+ </arguments>
656
+ </parameters>
657
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
658
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
659
+ <update output="result"/>
660
+ <_timing>
661
+ <_timing_min/>
662
+ <_timing_max/>
663
+ <_timing_avg/>
664
+ </_timing>
665
+ <_notes>
666
+ <_notes_general/>
667
+ <_notes_output/>
668
+ <_attachments/>
669
+ </_notes>
670
+ </call>
671
+ </otherwise>
672
+ </choose>
673
+ <choose mode="exclusive">
674
+ <alternative condition="data.geometriedata_radsatz_neu == false">
675
+ <call id="a30" endpoint="worklist_b">
676
+ <parameters>
677
+ <label>Lesen der Barcodes der gebrauchten Scheiben</label>
678
+ <method>:post</method>
679
+ <arguments/>
680
+ </parameters>
681
+ <finalize output="result"># lesen anhand barcode
682
+ data.eigenspannunswerte = result.eigenspannungswerte
683
+ data.taetigkeiten &lt;&lt; "UT Scheibe"</finalize>
684
+ <update output="result"/>
685
+ <_notes>
686
+ <_notes_general/>
687
+ </_notes>
688
+ </call>
689
+ </alternative>
690
+ <otherwise/>
691
+ </choose>
692
+ <choose mode="exclusive">
693
+ <alternative condition="data.tauschgruppe == 'ich bin ein zug mit personen drinn' || data.tauschgruppe == 'ich bin ein g&#xFC;terzug mit bremsscheigen'">
694
+ <call id="a21" endpoint="">
695
+ <parameters>
696
+ <label>Wuchten 550</label>
697
+ <method>:post</method>
698
+ <arguments/>
699
+ </parameters>
700
+ <finalize output="result"># sicher gramm pro meter, nachgeschaut
701
+ data.wucht_gramm_pro_meter = result.gramm_pro_meter
702
+
703
+ if data.wucht_gramm_pro_meter != data.tausch_gruppe.wucht_gramm_pro_meter
704
+ data.wucht_status == 'schlecht'
705
+ else
706
+ data.wucht_status == 'gut'
707
+ end</finalize>
708
+ <update output="result"/>
709
+ <_notes>
710
+ <_notes_general/>
711
+ </_notes>
712
+ </call>
713
+ </alternative>
714
+ <otherwise/>
715
+ </choose>
716
+ </loop>
717
+ </alternative>
718
+ <otherwise/>
719
+ </choose>
720
+ <choose mode="exclusive">
721
+ <alternative condition="data.lagerlaufleistung &gt; data.tauschgruppe[&quot;lagerlaufleistung&quot;] || data.schaedigungen.include?(&quot;defekter innenring&quot;) || data.taetigkeiten.include?(&quot;Demontage Innenringe&quot;)">
722
+ <call id="a32" endpoint="">
723
+ <parameters>
724
+ <label>Demontage Innenringe 420</label>
725
+ <method>:post</method>
726
+ <arguments/>
727
+ </parameters>
728
+ <finalize output="result"># innenringe montieren falls welche drauf waren
729
+ data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize>
730
+ <update output="result"/>
731
+ <_notes>
732
+ <_notes_general/>
733
+ </_notes>
734
+ </call>
735
+ <call id="a31" endpoint="">
736
+ <parameters>
737
+ <label>Radsatzwelle Bürsten 490</label>
738
+ <method>:post</method>
739
+ <arguments/>
740
+ </parameters>
741
+ <finalize output="result"># eventuell sandstrahlen
742
+ data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize>
743
+ <update output="result"/>
744
+ <_notes>
745
+ <_notes_general/>
746
+ </_notes>
747
+ </call>
748
+ <choose mode="exclusive">
749
+ <alternative condition="data.taetigkeiten.include? 'Sandstrahlen'">
750
+ <call id="a33" endpoint="">
751
+ <parameters>
752
+ <label>Sandstrahlen 480</label>
753
+ <method>:post</method>
754
+ <arguments/>
755
+ </parameters>
756
+ <finalize output="result"/>
757
+ <update output="result"/>
758
+ <_notes>
759
+ <_notes_general/>
760
+ </_notes>
761
+ </call>
762
+ </alternative>
763
+ <otherwise/>
764
+ </choose>
765
+ <call id="a34" endpoint="">
766
+ <parameters>
767
+ <label>UT Radsatzwelle 430</label>
768
+ <method>:post</method>
769
+ <arguments/>
770
+ </parameters>
771
+ <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize>
772
+ <update output="result"/>
773
+ <_timing>
774
+ <_timing_min/>
775
+ <_timing_max/>
776
+ <_timing_avg/>
777
+ </_timing>
778
+ <_notes>
779
+ <_notes_general/>
780
+ <_notes_output/>
781
+ <_attachments/>
782
+ </_notes>
783
+ </call>
784
+ <loop mode="post_test" condition="data.innenringstatus != 'ok'">
785
+ <loop mode="post_test" condition="data.radsatzwelle_status == 'schlecht'">
786
+ <call id="a38" endpoint="">
787
+ <parameters>
788
+ <label>Radsatzwelle drehen HS4 595</label>
789
+ <method>:post</method>
790
+ <arguments/>
791
+ </parameters>
792
+ <finalize output="result"/>
793
+ <update output="result"/>
794
+ <_notes>
795
+ <_notes_general/>
796
+ </_notes>
797
+ </call>
798
+ <call id="a37" endpoint="">
799
+ <parameters>
800
+ <label>UT Radsatzwelle 430</label>
801
+ <method>:post</method>
802
+ <arguments/>
803
+ </parameters>
804
+ <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize>
805
+ <update output="result"/>
806
+ <_timing>
807
+ <_timing_min/>
808
+ <_timing_max/>
809
+ <_timing_avg/>
810
+ </_timing>
811
+ <_notes>
812
+ <_notes_general/>
813
+ <_notes_output/>
814
+ <_attachments/>
815
+ </_notes>
816
+ </call>
817
+ </loop>
818
+ <call id="a36" endpoint="">
819
+ <parameters>
820
+ <label>Innenringmontage 190</label>
821
+ <method>:post</method>
822
+ <arguments/>
823
+ </parameters>
824
+ <finalize output="result">data.innenring_status = result["innnenring_status"] # ok, beschaedigung, untermass</finalize>
825
+ <update output="result"/>
826
+ <_timing>
827
+ <_timing_min/>
828
+ <_timing_max/>
829
+ <_timing_avg/>
830
+ </_timing>
831
+ <_notes>
832
+ <_notes_general/>
833
+ <_notes_output/>
834
+ <_attachments/>
835
+ </_notes>
836
+ </call>
837
+ </loop>
838
+ <call id="a41" endpoint="">
839
+ <parameters>
840
+ <label>MT Allg. Prüfung 170</label>
841
+ <method>:post</method>
842
+ <arguments/>
843
+ </parameters>
844
+ <finalize output="result"/>
845
+ <update output="result"/>
846
+ <_notes>
847
+ <_notes_general/>
848
+ </_notes>
849
+ </call>
850
+ <call id="a18" endpoint="">
851
+ <parameters>
852
+ <label>UT Scheibe 630</label>
853
+ <method>:post</method>
854
+ <arguments/>
855
+ </parameters>
856
+ <finalize output="result">if result.ut_scheibe_status != 'gut'
857
+ data.taetigkeiten &lt;&lt; 'Drehen'
858
+ end</finalize>
859
+ <update output="result"/>
860
+ <_notes>
861
+ <_notes_general/>
862
+ </_notes>
863
+ </call>
864
+ </alternative>
865
+ <otherwise/>
866
+ </choose>
867
+ <loop mode="post_test" condition="data.taetigkeiten.include? 'Drehen'">
868
+ <choose mode="exclusive">
869
+ <alternative condition="data.tauschgruppe == &quot;ich habe eine bremsscheibe&quot;">
870
+ <call id="a39" endpoint="">
871
+ <parameters>
872
+ <label>Rad und Bremsscheibe drehen 320</label>
873
+ <method>:post</method>
874
+ <arguments>
875
+ <wellentyp/>
876
+ </arguments>
877
+ </parameters>
878
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
879
+ # eventuell abpressen
880
+ data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize>
881
+ <update output="result"/>
882
+ <_notes>
883
+ <_notes_general/>
884
+ </_notes>
885
+ </call>
886
+ </alternative>
887
+ <otherwise>
888
+ <call id="a40" endpoint="drehen">
889
+ <parameters>
890
+ <label>Radscheibe drehen 321</label>
891
+ <method>:post</method>
892
+ <arguments>
893
+ <wellentyp/>
894
+ </arguments>
895
+ </parameters>
896
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']</finalize>
897
+ <update output="result"/>
898
+ <_notes>
899
+ <_notes_general/>
900
+ </_notes>
901
+ </call>
902
+ </otherwise>
903
+ </choose>
904
+ <choose mode="exclusive">
905
+ <alternative condition="data.taetigkeiten.include? 'Kerbschleifen'">
906
+ <call id="a17" endpoint="kerb">
907
+ <parameters>
908
+ <label>Kerbschleifen 240</label>
909
+ <method>:post</method>
910
+ <arguments/>
911
+ </parameters>
912
+ <finalize output="result">data.taetigkeiten.delete("Kerbschleifen")
913
+ # eventuell abpressen
914
+ data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize>
915
+ <update output="result"/>
916
+ <_notes>
917
+ <_notes_general/>
918
+ </_notes>
919
+ </call>
920
+ </alternative>
921
+ <otherwise/>
922
+ </choose>
923
+ <call id="a10" endpoint="ut">
924
+ <parameters>
925
+ <label>UT Scheibe 630</label>
926
+ <method>:post</method>
927
+ <arguments/>
928
+ </parameters>
929
+ <finalize output="result">data.taetigkeiten.delete("UT Scheibe")
930
+ if endpoints.ut != "http://localhost/customers/oebb/services/oebb.php"
931
+ data.taetigkeiten = data.taetigkeiten + result['taetigkeiten']
932
+ end
933
+ endpoints.ut = "http://localhost/customers/oebb/services/oebb.php"</finalize>
934
+ <update output="result"/>
935
+ </call>
936
+ </loop>
937
+ </parallel_branch>
938
+ <parallel_branch pass="" local="">
939
+ <call id="a7" endpoint="lageraufbereitung">
940
+ <parameters>
941
+ <label>Lageraufbereitung 680</label>
942
+ <method>:post</method>
943
+ <arguments>
944
+ <timeout>2</timeout>
945
+ </arguments>
946
+ </parameters>
947
+ <finalize output="result"/>
948
+ <update output="result"/>
949
+ <_timing>
950
+ <_timing_min/>
951
+ <_timing_max/>
952
+ <_timing_avg/>
953
+ </_timing>
954
+ <_notes>
955
+ <_notes_general/>
956
+ <_notes_output/>
957
+ <_attachments/>
958
+ </_notes>
959
+ </call>
960
+ </parallel_branch>
961
+ </parallel>
962
+ <call id="a11" endpoint="fix">
31
963
  <parameters>
32
- <!--{{{-->
33
- <label>Step 1</label>
964
+ <label>Lagermontage 640</label>
34
965
  <method>:post</method>
35
966
  <arguments>
36
- <timeout>2</timeout>
967
+ <lagerbauart/>
37
968
  </arguments>
38
969
  </parameters>
39
- <!--}}}-->
40
- <finalize output="result">data.x += "a1,"</finalize>
970
+ <finalize output="result">data.taetigkeiten.delete("Montage Deckel")</finalize>
971
+ <update output="result"/>
972
+ <_notes>
973
+ <_notes_general/>
974
+ </_notes>
41
975
  </call>
42
- <call id="a2" endpoint="timeout">
976
+ <call id="a12" endpoint="fix">
43
977
  <parameters>
44
- <!--{{{-->
45
- <label>Step 2</label>
978
+ <label>Austrittskontrolle 650</label>
979
+ <method>:post</method>
980
+ <arguments/>
981
+ </parameters>
982
+ <finalize output="result">data.taetigkeiten.delete("Austrittskontrolle")</finalize>
983
+ <update output="result"/>
984
+ </call>
985
+ <call id="a13" endpoint="fix">
986
+ <parameters>
987
+ <label>Lackierung 675</label>
46
988
  <method>:post</method>
47
989
  <arguments>
48
- <timeout>4</timeout>
990
+ <strategie/>
49
991
  </arguments>
50
992
  </parameters>
51
- <!--}}}-->
52
- <finalize output="result">data.x += "a2,"</finalize>
993
+ <finalize output="result">data.taetigkeiten.delete("Lackierung")</finalize>
994
+ <update output="result"/>
53
995
  </call>
54
- <call id="a3" endpoint="timeout">
996
+ <call id="a14" endpoint="fix">
55
997
  <parameters>
56
- <!--{{{-->
57
- <label>Step 3</label>
998
+ <label>Versandfertig 690</label>
58
999
  <method>:post</method>
59
1000
  <arguments>
60
- <timeout>4</timeout>
1001
+ <technische_weisungen/>
1002
+ <regelwerk/>
61
1003
  </arguments>
62
1004
  </parameters>
63
- <!--}}}-->
64
- <finalize output="result">data.x += "a3,"</finalize>
1005
+ <finalize output="result">data.taetigkeiten.delete("Versandfertig")</finalize>
1006
+ <update output="result"/>
65
1007
  </call>
1008
+ <call id="a15" endpoint="fix">
1009
+ <parameters>
1010
+ <label>Qualitaetsfreigabe 710</label>
1011
+ <method>:post</method>
1012
+ <arguments>
1013
+ <regelwerk/>
1014
+ <technische_weisungen/>
1015
+ </arguments>
1016
+ </parameters>
1017
+ <finalize output="result">data.taetigkeiten.delete("Qualitaetsfreigabe")</finalize>
1018
+ <update output="result"/>
1019
+ </call>
1020
+ <choose mode="exclusive">
1021
+ <alternative condition="data.taetigkeiten.include? &quot;anbauteile montieren&quot;">
1022
+ <call id="a35" endpoint="">
1023
+ <parameters>
1024
+ <label>Anbauteilmontage 670</label>
1025
+ <method>:post</method>
1026
+ <arguments/>
1027
+ </parameters>
1028
+ <finalize output="result"/>
1029
+ <update output="result"/>
1030
+ <_notes>
1031
+ <_notes_general/>
1032
+ </_notes>
1033
+ </call>
1034
+ </alternative>
1035
+ <otherwise/>
1036
+ </choose>
66
1037
  </description>
67
1038
  </dslx>
68
1039
  <status>
@@ -71,48 +1042,762 @@ END
71
1042
  </status>
72
1043
  <description>
73
1044
  <description xmlns="http://cpee.org/ns/description/1.0">
74
- <!--{{{-->
75
- <call id="a1" endpoint="timeout">
1045
+ <call id="a1" endpoint="init">
1046
+ <parameters>
1047
+ <label>Identifikation 110</label>
1048
+ <method>:post</method>
1049
+ <arguments>
1050
+ <radsatznummer/>
1051
+ <wellentyp/>
1052
+ <lagerbauart/>
1053
+ <tauschgruppe/>
1054
+ <eigentuemer/>
1055
+ <regelwerk/>
1056
+ <auftragsnummer/>
1057
+ <mindeststragie/>
1058
+ <technische_weisungen/>
1059
+ <schadcodes/>
1060
+ <lagerlaufleistung>in jahre</lagerlaufleistung>
1061
+ <lagerlaufleistung>stempel am lager in zukunft aus sam</lagerlaufleistung>
1062
+ </arguments>
1063
+ </parameters>
1064
+ <finalize output="result">data.strategie = result['strategie'] # IHS 123
1065
+
1066
+ # Liste der Schadcodes
1067
+ data.schaedigungen = result['schaedigungen']
1068
+
1069
+ # Manganschweissen, Gelber Anstrich, technische_weisungen
1070
+ data.taetigkeiten = result['taetigkeiten']
1071
+
1072
+ data.lagerlaufleistung = result["lagerlaufleistung"].to_f
1073
+ data.tauschgruppe = result["tauschgruppe"]</finalize>
1074
+ <update output="result"/>
1075
+ <_timing>
1076
+ <_timing_min/>
1077
+ <_timing_max/>
1078
+ <_timing_avg/>
1079
+ </_timing>
1080
+ <_notes>
1081
+ <_notes_general/>
1082
+ <_notes_output/>
1083
+ <_attachments/>
1084
+ </_notes>
1085
+ </call>
1086
+ <choose mode="exclusive">
1087
+ <alternative condition="data.taetigkeiten.grep(/Demontage Deckel/) &amp;&amp; data.taetigkeiten.grep(/Demontage Deckel/).length == 1">
1088
+ <choose mode="exclusive">
1089
+ <alternative condition="data.lagerbauart != 'Deckel mit Loch'">
1090
+ <call id="a2" endpoint="fix">
1091
+ <parameters>
1092
+ <label>Lagerdeckeldemontage 130</label>
1093
+ <method>:post</method>
1094
+ <arguments>
1095
+ <deckel>true</deckel>
1096
+ <lager>false</lager>
1097
+ <anbauteile>true</anbauteile>
1098
+ </arguments>
1099
+ </parameters>
1100
+ <finalize output="result">data.taetigkeiten &lt;&lt; "Montage Deckel"
1101
+ data.taetigkeiten.delete("Demontage Deckel")</finalize>
1102
+ <update output="result"/>
1103
+ </call>
1104
+ </alternative>
1105
+ <otherwise/>
1106
+ </choose>
1107
+ </alternative>
1108
+ <otherwise>
1109
+ <call id="a16" endpoint="">
1110
+ <parameters>
1111
+ <label>Lagerdemontage 130</label>
1112
+ <method>:post</method>
1113
+ <arguments>
1114
+ <deckel>true</deckel>
1115
+ <lager>true</lager>
1116
+ <anbauteile>true</anbauteile>
1117
+ <details/>
1118
+ </arguments>
1119
+ </parameters>
1120
+ <finalize output="result"># ab IS1+IL aufwaerts
1121
+ # data.details ist alles unten
1122
+
1123
+ data.wellenhersteller
1124
+ data.wellenmaterial
1125
+ data.schmelze
1126
+ data.charge
1127
+ data.wellenherstelldatum
1128
+ data.erstfueger
1129
+ data.erstfuegerdatum
1130
+ data.wellennummer
1131
+ data.lagerherstelldatum
1132
+ data.lagerlaufleistung
1133
+ data.lhm_korbnummer_rechts
1134
+ data.lhm_korbnummer_links
1135
+
1136
+ # gibt der mitarbeiter ein, wird verglichen</finalize>
1137
+ <update output="result"/>
1138
+ </call>
1139
+ <choose mode="exclusive">
1140
+ <alternative condition="data.radsatznummer != data.wellennummer">
1141
+ <call id="a4" endpoint="">
1142
+ <parameters>
1143
+ <label>Datenkonsistenz herstellen, eventuelle Barcode ausdrucken</label>
1144
+ <method>:post</method>
1145
+ <arguments/>
1146
+ </parameters>
1147
+ <finalize output="result"/>
1148
+ <update output="result"/>
1149
+ </call>
1150
+ </alternative>
1151
+ <otherwise/>
1152
+ </choose>
1153
+ <choose mode="exclusive">
1154
+ <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerherstelldatum &lt; data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &lt; data.lagertyp.maximallaufleistung">
1155
+ <call id="a6" endpoint="">
1156
+ <parameters>
1157
+ <label>Externe Lageraufbereitung</label>
1158
+ <method>:post</method>
1159
+ <arguments/>
1160
+ </parameters>
1161
+ </call>
1162
+ </alternative>
1163
+ <alternative condition="data.lagertyp == &quot;kartuschenlager&quot; &amp;&amp; data.lagerherstelldatum &gt;= data.lagertyp.maximaldatum &amp;&amp; data.lagerlaufleistung &gt; data.lagertyp.maximallaufleistung">
1164
+ <call id="a5" endpoint="">
1165
+ <parameters>
1166
+ <label>Lager Verschrotten</label>
1167
+ <method>:post</method>
1168
+ <arguments/>
1169
+ </parameters>
1170
+ </call>
1171
+ </alternative>
1172
+ <otherwise>
1173
+ <manipulate id="a42">data.taetigkeiten &lt;&lt; 'Lageraufbereitung'</manipulate>
1174
+ </otherwise>
1175
+ </choose>
1176
+ </otherwise>
1177
+ </choose>
1178
+ <parallel wait="-1">
1179
+ <parallel_branch pass="" local="">
1180
+ <loop mode="post_test" condition="data.taetigkeiten.include? 'Eigenspannungspruefung'">
1181
+ <call id="a3" endpoint="eigen">
1182
+ <parameters>
1183
+ <label>Eigenspannungspruefung 140</label>
1184
+ <method>:post</method>
1185
+ <arguments>
1186
+ <werkstoff/>
1187
+ <bauform_scheibe/>
1188
+ <pruefprogramm/>
1189
+ </arguments>
1190
+ </parameters>
1191
+ <finalize output="result">data.eigenspannungswerte
1192
+ # Radsatz regenerieren falls die Station das meldet
1193
+ data.taetigkeiten &lt;&lt; "Radsatz regenerieren"
1194
+ data.taetigkeiten.delete("Eigenspannungspruefung")</finalize>
1195
+ <update output="result"/>
1196
+ <_notes>
1197
+ <_notes_general/>
1198
+ </_notes>
1199
+ </call>
1200
+ <choose mode="exclusive">
1201
+ <alternative condition="data.taetigkeiten.include? 'Radsatz regenerieren'">
1202
+ <call id="a20" endpoint="timeout">
1203
+ <parameters>
1204
+ <label>Radsatz regenerieren</label>
1205
+ <method>:post</method>
1206
+ <arguments>
1207
+ <timeout>2</timeout>
1208
+ </arguments>
1209
+ </parameters>
1210
+ <finalize output="result">data.taetigkeiten.delete("Radsatz regenerieren")</finalize>
1211
+ <update output="result"/>
1212
+ <_timing>
1213
+ <_timing_min/>
1214
+ <_timing_max/>
1215
+ <_timing_avg/>
1216
+ </_timing>
1217
+ <_notes>
1218
+ <_notes_general/>
1219
+ <_notes_output/>
1220
+ <_attachments/>
1221
+ </_notes>
1222
+ </call>
1223
+ </alternative>
1224
+ <otherwise/>
1225
+ </choose>
1226
+ </loop>
1227
+ <choose mode="exclusive">
1228
+ <alternative condition="data.taetigkeiten.include? 'Abpressen'">
1229
+ <manipulate id="a19"/>
1230
+ <loop mode="post_test" condition="data.wuchten_status == 'schlecht'">
1231
+ <loop mode="post_test" condition="data.wellenstatus == &quot;beschaedigt&quot;">
1232
+ <call id="a22" endpoint="abpressen">
1233
+ <parameters>
1234
+ <label>Radscheibe abpressen 510/511</label>
1235
+ <method>:post</method>
1236
+ <arguments/>
1237
+ </parameters>
1238
+ <finalize output="result">if result['status'] == "lagersitz kaputt"
1239
+ # z.b. weil lagersitz im arsch
1240
+ data.taetigkeiten.clear
1241
+ end
1242
+
1243
+ data.taetigkeiten &lt;&lt; "Radsatzwelle drehen"</finalize>
1244
+ <update output="result"/>
1245
+ <_timing>
1246
+ <_timing_min/>
1247
+ <_timing_max/>
1248
+ <_timing_avg/>
1249
+ </_timing>
1250
+ <_notes>
1251
+ <_notes_general/>
1252
+ <_notes_output/>
1253
+ <_attachments/>
1254
+ </_notes>
1255
+ </call>
1256
+ <call id="a23" endpoint="timeout">
1257
+ <parameters>
1258
+ <label>Radsatzwelle drehen 520/521</label>
1259
+ <method>:post</method>
1260
+ <arguments>
1261
+ <timeout>2</timeout>
1262
+ </arguments>
1263
+ </parameters>
1264
+ <finalize output="result"/>
1265
+ <update output="result"/>
1266
+ <_timing>
1267
+ <_timing_min/>
1268
+ <_timing_max/>
1269
+ <_timing_avg/>
1270
+ </_timing>
1271
+ <_notes>
1272
+ <_notes_general/>
1273
+ <_notes_output/>
1274
+ <_attachments/>
1275
+ </_notes>
1276
+ </call>
1277
+ <call id="a24" endpoint="timeout">
1278
+ <parameters>
1279
+ <label>MT Welle unbescheibt prüfen 535</label>
1280
+ <method>:post</method>
1281
+ <arguments>
1282
+ <timeout>2</timeout>
1283
+ </arguments>
1284
+ </parameters>
1285
+ <finalize output="result"/>
1286
+ <update output="result"/>
1287
+ <_timing>
1288
+ <_timing_min/>
1289
+ <_timing_max/>
1290
+ <_timing_avg/>
1291
+ </_timing>
1292
+ <_notes>
1293
+ <_notes_general>Wenn status schlecht, zum drehen
1294
+ Wenn mindestdruchmesser erreicht, schrott</_notes_general>
1295
+ <_notes_output/>
1296
+ <_attachments/>
1297
+ </_notes>
1298
+ </call>
1299
+ <call id="a25" endpoint="timeout">
1300
+ <parameters>
1301
+ <label>Senkrechtbohrwerk 530/531</label>
1302
+ <method>:post</method>
1303
+ <arguments>
1304
+ <timeout>2</timeout>
1305
+ </arguments>
1306
+ </parameters>
1307
+ <finalize output="result"/>
1308
+ <update output="result"># ich hab radscheibe demontiert, alle
1309
+ # die fuer die wellentype zulässig sind
1310
+ # dürfen wieder rauf
1311
+ # (verbrauchsmaterial liste)
1312
+ # wellentype -&gt; zulässige materialnummer
1313
+ # materialnummern können bremsscheibe, radscheibe oder
1314
+ # radbremsscheibe sein. Mehrere zulässige.</update>
1315
+ <_timing>
1316
+ <_timing_min/>
1317
+ <_timing_max/>
1318
+ <_timing_avg/>
1319
+ </_timing>
1320
+ <_notes>
1321
+ <_notes_general/>
1322
+ <_notes_output/>
1323
+ <_attachments/>
1324
+ </_notes>
1325
+ </call>
1326
+ <call id="a26" endpoint="aufpressen">
1327
+ <parameters>
1328
+ <label>Radscheibe aufpressen 516/510</label>
1329
+ <method>:post</method>
1330
+ <arguments/>
1331
+ </parameters>
1332
+ <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht"
1333
+ data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize>
1334
+ <update output="result"/>
1335
+ <_timing>
1336
+ <_timing_min/>
1337
+ <_timing_max/>
1338
+ <_timing_avg/>
1339
+ </_timing>
1340
+ <_notes>
1341
+ <_notes_general/>
1342
+ <_notes_output/>
1343
+ <_attachments/>
1344
+ </_notes>
1345
+ </call>
1346
+ <loop mode="pre_test" condition="data.presskraftdiagramm == &quot;schlecht&quot; &amp;&amp; data.wellenstatus != &quot;beschaedigt&quot;">
1347
+ <call id="a27" endpoint="abpressen">
1348
+ <parameters>
1349
+ <label>Radscheibe abpressen 510/511</label>
1350
+ <method>:post</method>
1351
+ <arguments/>
1352
+ </parameters>
1353
+ <finalize output="result"/>
1354
+ <update output="result"/>
1355
+ <_timing>
1356
+ <_timing_min/>
1357
+ <_timing_max/>
1358
+ <_timing_avg/>
1359
+ </_timing>
1360
+ <_notes>
1361
+ <_notes_general/>
1362
+ <_notes_output/>
1363
+ <_attachments/>
1364
+ </_notes>
1365
+ </call>
1366
+ <call id="a28" endpoint="aufpressen_gut">
1367
+ <parameters>
1368
+ <label>Radscheibe aufpressen 516/510</label>
1369
+ <method>:post</method>
1370
+ <arguments/>
1371
+ </parameters>
1372
+ <finalize output="result">data.presskraftdiagramm = result["presskraftdiagramm"] # "gut" oder "schlecht"
1373
+ data.wellenstatus = result["wellenstatus"] # "gut" oder "beschaedigt"</finalize>
1374
+ <update output="result"/>
1375
+ <_timing>
1376
+ <_timing_min/>
1377
+ <_timing_max/>
1378
+ <_timing_avg/>
1379
+ </_timing>
1380
+ <_notes>
1381
+ <_notes_general/>
1382
+ <_notes_output/>
1383
+ <_attachments/>
1384
+ </_notes>
1385
+ </call>
1386
+ </loop>
1387
+ <manipulate id="a29">data.taetigkeiten.delete("Abpressen")</manipulate>
1388
+ </loop>
1389
+ <choose mode="exclusive">
1390
+ <alternative condition="data.tauschgruppe == &quot;ich habe eine bremsscheibe&quot;">
1391
+ <call id="a8" endpoint="">
1392
+ <parameters>
1393
+ <label>Rad und Bremsscheibe messen 320</label>
1394
+ <method>:post</method>
1395
+ <arguments>
1396
+ <wellentyp/>
1397
+ </arguments>
1398
+ </parameters>
1399
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
1400
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
1401
+ <update output="result"/>
1402
+ <_notes>
1403
+ <_notes_general/>
1404
+ </_notes>
1405
+ </call>
1406
+ </alternative>
1407
+ <otherwise>
1408
+ <call id="a9" endpoint="drehen">
1409
+ <parameters>
1410
+ <label>Radscheibe messen 321</label>
1411
+ <method>:post</method>
1412
+ <arguments>
1413
+ <wellentyp/>
1414
+ </arguments>
1415
+ </parameters>
1416
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
1417
+ data.geometriedaten_radsatz_neu = result['geometriedaten_neu'] # true/false</finalize>
1418
+ <update output="result"/>
1419
+ <_timing>
1420
+ <_timing_min/>
1421
+ <_timing_max/>
1422
+ <_timing_avg/>
1423
+ </_timing>
1424
+ <_notes>
1425
+ <_notes_general/>
1426
+ <_notes_output/>
1427
+ <_attachments/>
1428
+ </_notes>
1429
+ </call>
1430
+ </otherwise>
1431
+ </choose>
1432
+ <choose mode="exclusive">
1433
+ <alternative condition="data.geometriedata_radsatz_neu == false">
1434
+ <call id="a30" endpoint="worklist_b">
1435
+ <parameters>
1436
+ <label>Lesen der Barcodes der gebrauchten Scheiben</label>
1437
+ <method>:post</method>
1438
+ <arguments/>
1439
+ </parameters>
1440
+ <finalize output="result"># lesen anhand barcode
1441
+ data.eigenspannunswerte = result.eigenspannungswerte
1442
+ data.taetigkeiten &lt;&lt; "UT Scheibe"</finalize>
1443
+ <update output="result"/>
1444
+ <_notes>
1445
+ <_notes_general/>
1446
+ </_notes>
1447
+ </call>
1448
+ </alternative>
1449
+ <otherwise/>
1450
+ </choose>
1451
+ <choose mode="exclusive">
1452
+ <alternative condition="data.tauschgruppe == 'ich bin ein zug mit personen drinn' || data.tauschgruppe == 'ich bin ein g&#xFC;terzug mit bremsscheigen'">
1453
+ <call id="a21" endpoint="">
1454
+ <parameters>
1455
+ <label>Wuchten 550</label>
1456
+ <method>:post</method>
1457
+ <arguments/>
1458
+ </parameters>
1459
+ <finalize output="result"># sicher gramm pro meter, nachgeschaut
1460
+ data.wucht_gramm_pro_meter = result.gramm_pro_meter
1461
+
1462
+ if data.wucht_gramm_pro_meter != data.tausch_gruppe.wucht_gramm_pro_meter
1463
+ data.wucht_status == 'schlecht'
1464
+ else
1465
+ data.wucht_status == 'gut'
1466
+ end</finalize>
1467
+ <update output="result"/>
1468
+ <_notes>
1469
+ <_notes_general/>
1470
+ </_notes>
1471
+ </call>
1472
+ </alternative>
1473
+ <otherwise/>
1474
+ </choose>
1475
+ </loop>
1476
+ </alternative>
1477
+ <otherwise/>
1478
+ </choose>
1479
+ <choose mode="exclusive">
1480
+ <alternative condition="data.lagerlaufleistung &gt; data.tauschgruppe[&quot;lagerlaufleistung&quot;] || data.schaedigungen.include?(&quot;defekter innenring&quot;) || data.taetigkeiten.include?(&quot;Demontage Innenringe&quot;)">
1481
+ <call id="a32" endpoint="">
1482
+ <parameters>
1483
+ <label>Demontage Innenringe 420</label>
1484
+ <method>:post</method>
1485
+ <arguments/>
1486
+ </parameters>
1487
+ <finalize output="result"># innenringe montieren falls welche drauf waren
1488
+ data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize>
1489
+ <update output="result"/>
1490
+ <_notes>
1491
+ <_notes_general/>
1492
+ </_notes>
1493
+ </call>
1494
+ <call id="a31" endpoint="">
1495
+ <parameters>
1496
+ <label>Radsatzwelle Bürsten 490</label>
1497
+ <method>:post</method>
1498
+ <arguments/>
1499
+ </parameters>
1500
+ <finalize output="result"># eventuell sandstrahlen
1501
+ data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize>
1502
+ <update output="result"/>
1503
+ <_notes>
1504
+ <_notes_general/>
1505
+ </_notes>
1506
+ </call>
1507
+ <choose mode="exclusive">
1508
+ <alternative condition="data.taetigkeiten.include? 'Sandstrahlen'">
1509
+ <call id="a33" endpoint="">
1510
+ <parameters>
1511
+ <label>Sandstrahlen 480</label>
1512
+ <method>:post</method>
1513
+ <arguments/>
1514
+ </parameters>
1515
+ <finalize output="result"/>
1516
+ <update output="result"/>
1517
+ <_notes>
1518
+ <_notes_general/>
1519
+ </_notes>
1520
+ </call>
1521
+ </alternative>
1522
+ <otherwise/>
1523
+ </choose>
1524
+ <call id="a34" endpoint="">
1525
+ <parameters>
1526
+ <label>UT Radsatzwelle 430</label>
1527
+ <method>:post</method>
1528
+ <arguments/>
1529
+ </parameters>
1530
+ <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize>
1531
+ <update output="result"/>
1532
+ <_timing>
1533
+ <_timing_min/>
1534
+ <_timing_max/>
1535
+ <_timing_avg/>
1536
+ </_timing>
1537
+ <_notes>
1538
+ <_notes_general/>
1539
+ <_notes_output/>
1540
+ <_attachments/>
1541
+ </_notes>
1542
+ </call>
1543
+ <loop mode="post_test" condition="data.innenringstatus != 'ok'">
1544
+ <loop mode="post_test" condition="data.radsatzwelle_status == 'schlecht'">
1545
+ <call id="a38" endpoint="">
1546
+ <parameters>
1547
+ <label>Radsatzwelle drehen HS4 595</label>
1548
+ <method>:post</method>
1549
+ <arguments/>
1550
+ </parameters>
1551
+ <finalize output="result"/>
1552
+ <update output="result"/>
1553
+ <_notes>
1554
+ <_notes_general/>
1555
+ </_notes>
1556
+ </call>
1557
+ <call id="a37" endpoint="">
1558
+ <parameters>
1559
+ <label>UT Radsatzwelle 430</label>
1560
+ <method>:post</method>
1561
+ <arguments/>
1562
+ </parameters>
1563
+ <finalize output="result">data.radsatzwelle_status = result["radsatzwelle_status"] # gut / schlecht</finalize>
1564
+ <update output="result"/>
1565
+ <_timing>
1566
+ <_timing_min/>
1567
+ <_timing_max/>
1568
+ <_timing_avg/>
1569
+ </_timing>
1570
+ <_notes>
1571
+ <_notes_general/>
1572
+ <_notes_output/>
1573
+ <_attachments/>
1574
+ </_notes>
1575
+ </call>
1576
+ </loop>
1577
+ <call id="a36" endpoint="">
1578
+ <parameters>
1579
+ <label>Innenringmontage 190</label>
1580
+ <method>:post</method>
1581
+ <arguments/>
1582
+ </parameters>
1583
+ <finalize output="result">data.innenring_status = result["innnenring_status"] # ok, beschaedigung, untermass</finalize>
1584
+ <update output="result"/>
1585
+ <_timing>
1586
+ <_timing_min/>
1587
+ <_timing_max/>
1588
+ <_timing_avg/>
1589
+ </_timing>
1590
+ <_notes>
1591
+ <_notes_general/>
1592
+ <_notes_output/>
1593
+ <_attachments/>
1594
+ </_notes>
1595
+ </call>
1596
+ </loop>
1597
+ <call id="a41" endpoint="">
1598
+ <parameters>
1599
+ <label>MT Allg. Prüfung 170</label>
1600
+ <method>:post</method>
1601
+ <arguments/>
1602
+ </parameters>
1603
+ <finalize output="result"/>
1604
+ <update output="result"/>
1605
+ <_notes>
1606
+ <_notes_general/>
1607
+ </_notes>
1608
+ </call>
1609
+ <call id="a18" endpoint="">
1610
+ <parameters>
1611
+ <label>UT Scheibe 630</label>
1612
+ <method>:post</method>
1613
+ <arguments/>
1614
+ </parameters>
1615
+ <finalize output="result">if result.ut_scheibe_status != 'gut'
1616
+ data.taetigkeiten &lt;&lt; 'Drehen'
1617
+ end</finalize>
1618
+ <update output="result"/>
1619
+ <_notes>
1620
+ <_notes_general/>
1621
+ </_notes>
1622
+ </call>
1623
+ </alternative>
1624
+ <otherwise/>
1625
+ </choose>
1626
+ <loop mode="post_test" condition="data.taetigkeiten.include? 'Drehen'">
1627
+ <choose mode="exclusive">
1628
+ <alternative condition="data.tauschgruppe == &quot;ich habe eine bremsscheibe&quot;">
1629
+ <call id="a39" endpoint="">
1630
+ <parameters>
1631
+ <label>Rad und Bremsscheibe drehen 320</label>
1632
+ <method>:post</method>
1633
+ <arguments>
1634
+ <wellentyp/>
1635
+ </arguments>
1636
+ </parameters>
1637
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']
1638
+ # eventuell abpressen
1639
+ data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize>
1640
+ <update output="result"/>
1641
+ <_notes>
1642
+ <_notes_general/>
1643
+ </_notes>
1644
+ </call>
1645
+ </alternative>
1646
+ <otherwise>
1647
+ <call id="a40" endpoint="drehen">
1648
+ <parameters>
1649
+ <label>Radscheibe drehen 321</label>
1650
+ <method>:post</method>
1651
+ <arguments>
1652
+ <wellentyp/>
1653
+ </arguments>
1654
+ </parameters>
1655
+ <finalize output="result">data.geometriedaten_radsatz = result['geometriedaten']</finalize>
1656
+ <update output="result"/>
1657
+ <_notes>
1658
+ <_notes_general/>
1659
+ </_notes>
1660
+ </call>
1661
+ </otherwise>
1662
+ </choose>
1663
+ <choose mode="exclusive">
1664
+ <alternative condition="data.taetigkeiten.include? 'Kerbschleifen'">
1665
+ <call id="a17" endpoint="kerb">
1666
+ <parameters>
1667
+ <label>Kerbschleifen 240</label>
1668
+ <method>:post</method>
1669
+ <arguments/>
1670
+ </parameters>
1671
+ <finalize output="result">data.taetigkeiten.delete("Kerbschleifen")
1672
+ # eventuell abpressen
1673
+ data.taetigkeiten &lt;&lt; result.taetigkeiten</finalize>
1674
+ <update output="result"/>
1675
+ <_notes>
1676
+ <_notes_general/>
1677
+ </_notes>
1678
+ </call>
1679
+ </alternative>
1680
+ <otherwise/>
1681
+ </choose>
1682
+ <call id="a10" endpoint="ut">
1683
+ <parameters>
1684
+ <label>UT Scheibe 630</label>
1685
+ <method>:post</method>
1686
+ <arguments/>
1687
+ </parameters>
1688
+ <finalize output="result">data.taetigkeiten.delete("UT Scheibe")
1689
+ if endpoints.ut != "http://localhost/customers/oebb/services/oebb.php"
1690
+ data.taetigkeiten = data.taetigkeiten + result['taetigkeiten']
1691
+ end
1692
+ endpoints.ut = "http://localhost/customers/oebb/services/oebb.php"</finalize>
1693
+ <update output="result"/>
1694
+ </call>
1695
+ </loop>
1696
+ </parallel_branch>
1697
+ <parallel_branch pass="" local="">
1698
+ <call id="a7" endpoint="lageraufbereitung">
1699
+ <parameters>
1700
+ <label>Lageraufbereitung 680</label>
1701
+ <method>:post</method>
1702
+ <arguments>
1703
+ <timeout>2</timeout>
1704
+ </arguments>
1705
+ </parameters>
1706
+ <finalize output="result"/>
1707
+ <update output="result"/>
1708
+ <_timing>
1709
+ <_timing_min/>
1710
+ <_timing_max/>
1711
+ <_timing_avg/>
1712
+ </_timing>
1713
+ <_notes>
1714
+ <_notes_general/>
1715
+ <_notes_output/>
1716
+ <_attachments/>
1717
+ </_notes>
1718
+ </call>
1719
+ </parallel_branch>
1720
+ </parallel>
1721
+ <call id="a11" endpoint="fix">
1722
+ <parameters>
1723
+ <label>Lagermontage 640</label>
1724
+ <method>:post</method>
1725
+ <arguments>
1726
+ <lagerbauart/>
1727
+ </arguments>
1728
+ </parameters>
1729
+ <finalize output="result">data.taetigkeiten.delete("Montage Deckel")</finalize>
1730
+ <update output="result"/>
1731
+ <_notes>
1732
+ <_notes_general/>
1733
+ </_notes>
1734
+ </call>
1735
+ <call id="a12" endpoint="fix">
1736
+ <parameters>
1737
+ <label>Austrittskontrolle 650</label>
1738
+ <method>:post</method>
1739
+ <arguments/>
1740
+ </parameters>
1741
+ <finalize output="result">data.taetigkeiten.delete("Austrittskontrolle")</finalize>
1742
+ <update output="result"/>
1743
+ </call>
1744
+ <call id="a13" endpoint="fix">
76
1745
  <parameters>
77
- <!--{{{-->
78
- <label>Step 1</label>
1746
+ <label>Lackierung 675</label>
79
1747
  <method>:post</method>
80
1748
  <arguments>
81
- <timeout>2</timeout>
1749
+ <strategie/>
82
1750
  </arguments>
83
1751
  </parameters>
84
- <!--}}}-->
85
- <finalize output="result">data.x += "a1,"</finalize>
1752
+ <finalize output="result">data.taetigkeiten.delete("Lackierung")</finalize>
1753
+ <update output="result"/>
86
1754
  </call>
87
- <call id="a2" endpoint="timeout">
1755
+ <call id="a14" endpoint="fix">
88
1756
  <parameters>
89
- <!--{{{-->
90
- <label>Step 2</label>
1757
+ <label>Versandfertig 690</label>
91
1758
  <method>:post</method>
92
1759
  <arguments>
93
- <timeout>4</timeout>
1760
+ <technische_weisungen/>
1761
+ <regelwerk/>
94
1762
  </arguments>
95
1763
  </parameters>
96
- <!--}}}-->
97
- <finalize output="result">data.x += "a2,"</finalize>
1764
+ <finalize output="result">data.taetigkeiten.delete("Versandfertig")</finalize>
1765
+ <update output="result"/>
98
1766
  </call>
99
- <call id="a3" endpoint="timeout">
1767
+ <call id="a15" endpoint="fix">
100
1768
  <parameters>
101
- <!--{{{-->
102
- <label>Step 3</label>
1769
+ <label>Qualitaetsfreigabe 710</label>
103
1770
  <method>:post</method>
104
1771
  <arguments>
105
- <timeout>4</timeout>
1772
+ <regelwerk/>
1773
+ <technische_weisungen/>
106
1774
  </arguments>
107
1775
  </parameters>
108
- <!--}}}-->
109
- <finalize output="result">data.x += "a3,"</finalize>
1776
+ <finalize output="result">data.taetigkeiten.delete("Qualitaetsfreigabe")</finalize>
1777
+ <update output="result"/>
110
1778
  </call>
1779
+ <choose mode="exclusive">
1780
+ <alternative condition="data.taetigkeiten.include? &quot;anbauteile montieren&quot;">
1781
+ <call id="a35" endpoint="">
1782
+ <parameters>
1783
+ <label>Anbauteilmontage 670</label>
1784
+ <method>:post</method>
1785
+ <arguments/>
1786
+ </parameters>
1787
+ <finalize output="result"/>
1788
+ <update output="result"/>
1789
+ <_notes>
1790
+ <_notes_general/>
1791
+ </_notes>
1792
+ </call>
1793
+ </alternative>
1794
+ <otherwise/>
1795
+ </choose>
111
1796
  </description>
112
1797
  </description>
113
1798
  <transformation>
114
1799
  <description type="copy"/>
115
- <dataelements type="rest"/>
116
- <endpoints type="rest"/>
1800
+ <dataelements type="none"/>
1801
+ <endpoints type="none"/>
117
1802
  </transformation>
118
1803
  </properties>