fix: 服务器数据纪元保护(空快照不清空本地,自动全量重推自救) / 详情页导出指定日 / 全局计时时钟面板
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import { computed, ref } from 'vue'
|
||||
import { computed, ref, watch } from 'vue'
|
||||
import Icon from '../components/Icon.vue'
|
||||
import DayPanel from '../components/log/DayPanel.vue'
|
||||
import { listLogItemsBetween, listAttendanceBetween, listProjects, getWorkRule } from '../db/repo'
|
||||
@@ -23,7 +23,8 @@ const expStart = ref(todayStr())
|
||||
const expEnd = ref(todayStr())
|
||||
const exporting = ref(false)
|
||||
function rangeStartEnd(): { start: string; end: string; label: string } {
|
||||
if (expRange.value === 'day') return { start: expStart.value, end: expStart.value, label: expStart.value }
|
||||
// 「指定日」导出:导的是详情页当前浏览的那一天,而不是今天
|
||||
if (expRange.value === 'day') return { start: date.value, end: date.value, label: date.value }
|
||||
if (expRange.value === 'week') {
|
||||
const ws = weekStart(expStart.value)
|
||||
return { start: ws, end: addDays(ws, 6), label: ws + '_' + addDays(ws, 6) }
|
||||
@@ -87,6 +88,9 @@ function onDateInput(e: Event) {
|
||||
const v = (e.target as HTMLInputElement).value
|
||||
if (v) date.value = v
|
||||
}
|
||||
|
||||
// 浏览日期变化时,导出区间锚点跟随(周/月/自定义默认围绕当前指定日)
|
||||
watch(date, d => { expStart.value = d; if (expRange.value === 'custom') expEnd.value = d })
|
||||
</script>
|
||||
<template>
|
||||
<div class="detail-page">
|
||||
@@ -102,7 +106,7 @@ function onDateInput(e: Event) {
|
||||
<div class="exp-row">
|
||||
<span class="muted exp-label">导出</span>
|
||||
<div class="seg">
|
||||
<button class="seg-btn" :class="{ active: expRange === 'day' }" @click="expRange = 'day'">当日</button>
|
||||
<button class="seg-btn" :class="{ active: expRange === 'day' }" @click="expRange = 'day'">指定日</button>
|
||||
<button class="seg-btn" :class="{ active: expRange === 'week' }" @click="expRange = 'week'">当周</button>
|
||||
<button class="seg-btn" :class="{ active: expRange === 'month' }" @click="expRange = 'month'">当月</button>
|
||||
<button class="seg-btn" :class="{ active: expRange === 'custom' }" @click="expRange = 'custom'">自定义</button>
|
||||
|
||||
Reference in New Issue
Block a user