private static OvertimeContainer VerifyTimeVariable(int time_variable, int max_time_value) { OvertimeContainer Result = new OvertimeContainer(time_variable, 0); if (max_time_value == 0) { return(Result); } if (max_time_value < 0) { max_time_value *= -1; } if (time_variable >= max_time_value) { Result.Overtime = time_variable / max_time_value; Result.ProperTime = time_variable - (max_time_value * Result.Overtime); } else if (time_variable < 0) { Result.Overtime = (time_variable / max_time_value) - 1; Result.ProperTime = time_variable + (max_time_value * -Result.Overtime); } return(Result); }
private static StandardTime CheckForOvertime(StandardTime time, int timeValueIndex) { int max_value = StandardTimeVerifyer.GetMaximumTime((StandardTimeValues)timeValueIndex); OvertimeContainer overtimeContainer = VerifyTimeVariable(time.TimeValues[timeValueIndex], max_value); time.TimeValues[timeValueIndex] = overtimeContainer.ProperTime; if (timeValueIndex >= 1) { time.TimeValues[timeValueIndex - 1] += overtimeContainer.Overtime; } return(time); }