import at.clockwork.calculation.CalculationData import at.clockwork.calculation.data.* import at.clockwork.calculation.GeneralCalculationData import at.clockwork.time.service.DateTimeService import at.clockwork.calculation.RestartCalculationException class Calc99963Service { static transactional = false def run(CalculationData calculationData, GeneralCalculationData generalCalculationData, boolean saving, Map parameters) throws RestartCalculationException { double dv2 = _getDV( "2" ) double dv6 = _getDV( "6" ) double dv13 = _getDV( "13" ) double dv14 = _getDV( "14" ) double dv17 = _getDV( "17" ) double dv18 = _getDV( "18" ) double v99 = _cd.caps( dv2, dv6 ) if ( v99 > 0 && dv13 > 0 ) { double min = _cd.min( v99, dv13 ) _addDV( [ "6", "15" ], [ "13" ], min ) v99 -= min } if ( v99 > 0 && dv14 > 0 ) { double min = _cd.min( v99, dv14 ) _addDV( [ "6", "15" ], [ "14" ], min ) v99 -= min } if ( v99 > 0 && dv17 > 0 ) { double min = _cd.min( v99, dv17 ) _addDV( [ "6", "19" ], [ "17" ], min ) v99 -= min } if ( v99 > 0 && dv18 > 0 ) { double min = _cd.min( v99, dv18 ) _addDV( [ "6", "23" ], [ "18" ], min ) v99 -= min } if ( _cd.isPublicHoliday() ) { _setDV( [ "15", "19", "23" ], 0 ) } return } } /* ::1:: IF FUNC ZA_2 K ZA_6 DO =_XVAR_99 ; ::2:: IF XVAR_99 > ZT_0:00 UND ZA_13 > ZT_0:00 FUNC XVAR_99 MIN ZA_13 DO -_ZA_13 +_ZA_6 +_ZA_15 -_XVAR_99 ; ::3:: IF XVAR_99 > ZT_0:00 UND ZA_14 > ZT_0:00 FUNC XVAR_99 MIN ZA_14 DO -_ZA_14 +_ZA_6 +_ZA_15 -_XVAR_99 ; ::4:: IF XVAR_99 > ZT_0:00 UND ZA_17 > ZT_0:00 FUNC XVAR_99 MIN ZA_17 DO -_ZA_17 +_ZA_6 +_ZA_19 -_XVAR_99 ; ::5:: IF XVAR_99 > ZT_0:00 UND ZA_18 > ZT_0:00 FUNC XVAR_99 MIN ZA_18 DO -_ZA_18 +_ZA_6 +_ZA_23 -_XVAR_99 ; ::6:: IF VAR_FEIERTAG > NW_0 FUNC ZT_0:00 DO =_ZA_15 =_ZA_19 =_ZA_23 ; ::7:: IF FUNC RETURN_ DO ; */