make time entry calendar use seconds as a duration basis, fixes #996

This commit is contained in:
Gregor Vostrak
2026-01-14 18:41:06 +01:00
parent 5a05ee35e0
commit 19064cdc3d
2 changed files with 9 additions and 9 deletions

View File

@@ -179,20 +179,20 @@ const dailyTotals = computed(() => {
const totals: Record<string, number> = {};
props.timeEntries.forEach((entry) => {
const date = getDayJsInstance()(entry.start).format('YYYY-MM-DD');
let duration: number;
let durationSeconds: number;
if (entry.end !== null) {
// Completed entry
duration = getDayJsInstance()(entry.end).diff(
durationSeconds = getDayJsInstance()(entry.end).diff(
getDayJsInstance()(entry.start),
'minutes'
'seconds'
);
} else {
// Running entry - use current time
duration = currentTime.value.diff(getDayJsInstance()(entry.start), 'minutes');
durationSeconds = currentTime.value.diff(getDayJsInstance()(entry.start), 'seconds');
}
totals[date] = (totals[date] || 0) + duration;
totals[date] = (totals[date] || 0) + durationSeconds;
});
return totals;
});
@@ -444,7 +444,7 @@ onUnmounted(() => {
:date="
getDayJsInstance()(arg.date.toISOString()).utc().tz(getUserTimezone(), true)
"
:total-minutes="
:total-seconds="
dailyTotals[
getDayJsInstance()(arg.date)
.utc()