diff --git a/modules/time-calc-app/src/main/java/org/nanoboot/utils/timecalc/swing/common/WorkingDaysWindow.java b/modules/time-calc-app/src/main/java/org/nanoboot/utils/timecalc/swing/common/WorkingDaysWindow.java index f2326b9..212e2cd 100644 --- a/modules/time-calc-app/src/main/java/org/nanoboot/utils/timecalc/swing/common/WorkingDaysWindow.java +++ b/modules/time-calc-app/src/main/java/org/nanoboot/utils/timecalc/swing/common/WorkingDaysWindow.java @@ -361,38 +361,23 @@ public class WorkingDaysWindow extends TWindow { for (WorkingDayForStats wdfs : wdfsList) { ArrayList list2 = new ArrayList<>(); listForArray.add(list2); + + list2.add(wdfs.getDayOfWeekAsString()); + list2.add(wdfs.getDayOfWeek() == 6 || wdfs.getDayOfWeek() == 7 ? + YES : NO); + list2.add(wdfs.getId()); + if (wdfs.isThisDayTimeOff()) { - list2.add(wdfs.getDayOfWeekAsString()); - list2.add(wdfs.getDayOfWeek() == 6 || wdfs.getDayOfWeek() == 7 ? - YES : NO); - list2.add(wdfs.getId()); + list2.add(THREE_DASHES); list2.add(THREE_DASHES); list2.add(THREE_DASHES); list2.add(THREE_DASHES); list2.add(THREE_DASHES); - list2.add(wdfs.getNote()); - list2.add(wdfs.isTimeOff() ? YES : NO); - list2.add(QUESTION_MARK); - list2.add(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES - .format(wdfs.getArrivalTimeMovingAverage7Days() - - target)); - list2.add(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES - .format(wdfs.getArrivalTimeMovingAverage14Days() - - target)); - list2.add(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES - .format(wdfs.getArrivalTimeMovingAverage28Days() - - target)); - list2.add(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES - .format(wdfs.getArrivalTimeMovingAverage56Days() - - target)); } else { - list2.add(wdfs.getDayOfWeekAsString()); TTime overtime = new TTime(wdfs.getOvertimeHour(), wdfs.getOvertimeMinute()); - list2.add(wdfs.getDayOfWeek() == 6 || wdfs.getDayOfWeek() == 7 ? - YES : NO); - list2.add(wdfs.getId()); + list2.add(new TTime(wdfs.getArrivalHour(), wdfs.getArrivalMinute()).toString().substring(0, 5) + " (" + NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES @@ -406,22 +391,18 @@ public class WorkingDaysWindow extends TWindow { list2.add( TTime.ofMinutes(wdfs.getPauseTimeInMinutes()).toString() .substring(0, 5)); - list2.add(wdfs.getNote()); - list2.add(wdfs.isTimeOff() ? YES : NO); - list2.add(QUESTION_MARK); - list2.add(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES - .format(wdfs.getArrivalTimeMovingAverage7Days() - - target)); - list2.add(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES - .format(wdfs.getArrivalTimeMovingAverage14Days() - - target)); - list2.add(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES - .format(wdfs.getArrivalTimeMovingAverage28Days() - - target)); - list2.add(NumberFormats.FORMATTER_FIVE_DECIMAL_PLACES - .format(wdfs.getArrivalTimeMovingAverage56Days() - - target)); } + list2.add(wdfs.getNote()); + list2.add(wdfs.isTimeOff() ? YES : NO); + list2.add(QUESTION_MARK); + list2.add(TTime.ofMilliseconds( + (int) (wdfs.getArrivalTimeMovingAverage7Days() * 60d * 60d * 1000d)).toString().substring(0, 8)); + list2.add(TTime.ofMilliseconds( + (int) (wdfs.getArrivalTimeMovingAverage14Days() * 60d * 60d * 1000d)).toString().substring(0, 8)); + list2.add(TTime.ofMilliseconds( + (int) (wdfs.getArrivalTimeMovingAverage28Days() * 60d * 60d * 1000d)).toString().substring(0, 8)); + list2.add(TTime.ofMilliseconds( + (int) (wdfs.getArrivalTimeMovingAverage56Days() * 60d * 60d * 1000d)).toString().substring(0, 8)); } String data[][] = new String[listForArray.size()][]; diff --git a/modules/time-calc-app/src/main/java/org/nanoboot/utils/timecalc/utils/common/TTime.java b/modules/time-calc-app/src/main/java/org/nanoboot/utils/timecalc/utils/common/TTime.java index 2f15e1e..3fef585 100644 --- a/modules/time-calc-app/src/main/java/org/nanoboot/utils/timecalc/utils/common/TTime.java +++ b/modules/time-calc-app/src/main/java/org/nanoboot/utils/timecalc/utils/common/TTime.java @@ -140,13 +140,18 @@ public class TTime implements Comparable { return ofMilliseconds(s * 1000); } public static TTime ofMilliseconds(int s) { + boolean negative = false; + if(s < 0 ) { + s = Math.abs(s); + negative = true; + } int hours = s / 60 / 60 / 1000; int milliseconds = s - hours * 60 * 60 * 1000; int minutes = milliseconds / 60 / 1000; milliseconds = milliseconds - minutes * 60 * 1000; int seconds = milliseconds / 1000; milliseconds = milliseconds - seconds * 1000; - return new TTime(s < 0, Math.abs(hours), Math.abs(minutes), Math.abs(seconds), Math.abs(milliseconds)); + return new TTime(negative, Math.abs(hours), Math.abs(minutes), Math.abs(seconds), Math.abs(milliseconds)); } public TTime add(TTime tTimeToBeAdded) {