mirror of
https://github.com/Wei-Shaw/claude-relay-service.git
synced 2026-01-23 19:09:15 +00:00
修复仪表板折线图时间范围计算错误(UTC+8时区)
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
2
web/admin-spa/dist/index.html
vendored
2
web/admin-spa/dist/index.html
vendored
@@ -18,7 +18,7 @@
|
|||||||
<link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin>
|
<link rel="preconnect" href="https://cdnjs.cloudflare.com" crossorigin>
|
||||||
<link rel="dns-prefetch" href="https://cdn.jsdelivr.net">
|
<link rel="dns-prefetch" href="https://cdn.jsdelivr.net">
|
||||||
<link rel="dns-prefetch" href="https://cdnjs.cloudflare.com">
|
<link rel="dns-prefetch" href="https://cdnjs.cloudflare.com">
|
||||||
<script type="module" crossorigin src="/admin-next/assets/index-hS0iOrU-.js"></script>
|
<script type="module" crossorigin src="/admin-next/assets/index-8QtnjTcX.js"></script>
|
||||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vue-vendor-CKToUHZx.js">
|
<link rel="modulepreload" crossorigin href="/admin-next/assets/vue-vendor-CKToUHZx.js">
|
||||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/vendor-BDiMbLwQ.js">
|
<link rel="modulepreload" crossorigin href="/admin-next/assets/vendor-BDiMbLwQ.js">
|
||||||
<link rel="modulepreload" crossorigin href="/admin-next/assets/element-plus-B8Fs_0jW.js">
|
<link rel="modulepreload" crossorigin href="/admin-next/assets/element-plus-B8Fs_0jW.js">
|
||||||
|
|||||||
@@ -156,22 +156,33 @@ export const useDashboardStore = defineStore('dashboard', () => {
|
|||||||
if (dateFilter.value.type === 'preset') {
|
if (dateFilter.value.type === 'preset') {
|
||||||
switch (dateFilter.value.preset) {
|
switch (dateFilter.value.preset) {
|
||||||
case 'last24h':
|
case 'last24h':
|
||||||
|
// 近24小时:从当前时间往前推24小时
|
||||||
|
endTime = new Date(now)
|
||||||
startTime = new Date(now.getTime() - 24 * 60 * 60 * 1000)
|
startTime = new Date(now.getTime() - 24 * 60 * 60 * 1000)
|
||||||
endTime = now
|
|
||||||
break
|
break
|
||||||
case 'yesterday':
|
case 'yesterday':
|
||||||
|
// 昨天:使用UTC时间,避免时区双重转换
|
||||||
startTime = new Date(now)
|
startTime = new Date(now)
|
||||||
startTime.setDate(now.getDate() - 1)
|
startTime.setUTCDate(now.getUTCDate() - 1)
|
||||||
startTime.setHours(0, 0, 0, 0)
|
startTime.setUTCHours(0, 0, 0, 0)
|
||||||
endTime = new Date(startTime)
|
endTime = new Date(startTime)
|
||||||
endTime.setHours(23, 59, 59, 999)
|
endTime.setUTCHours(23, 59, 59, 999)
|
||||||
|
|
||||||
|
// 由于后端会加8小时,我们需要减去8小时
|
||||||
|
startTime = new Date(startTime.getTime() - 8 * 60 * 60 * 1000)
|
||||||
|
endTime = new Date(endTime.getTime() - 8 * 60 * 60 * 1000)
|
||||||
break
|
break
|
||||||
case 'dayBefore':
|
case 'dayBefore':
|
||||||
|
// 前天:使用UTC时间
|
||||||
startTime = new Date(now)
|
startTime = new Date(now)
|
||||||
startTime.setDate(now.getDate() - 2)
|
startTime.setUTCDate(now.getUTCDate() - 2)
|
||||||
startTime.setHours(0, 0, 0, 0)
|
startTime.setUTCHours(0, 0, 0, 0)
|
||||||
endTime = new Date(startTime)
|
endTime = new Date(startTime)
|
||||||
endTime.setHours(23, 59, 59, 999)
|
endTime.setUTCHours(23, 59, 59, 999)
|
||||||
|
|
||||||
|
// 由于后端会加8小时,我们需要减去8小时
|
||||||
|
startTime = new Date(startTime.getTime() - 8 * 60 * 60 * 1000)
|
||||||
|
endTime = new Date(endTime.getTime() - 8 * 60 * 60 * 1000)
|
||||||
break
|
break
|
||||||
default:
|
default:
|
||||||
// 默认近24小时
|
// 默认近24小时
|
||||||
@@ -233,22 +244,33 @@ export const useDashboardStore = defineStore('dashboard', () => {
|
|||||||
if (dateFilter.value.type === 'preset') {
|
if (dateFilter.value.type === 'preset') {
|
||||||
switch (dateFilter.value.preset) {
|
switch (dateFilter.value.preset) {
|
||||||
case 'last24h':
|
case 'last24h':
|
||||||
|
// 近24小时:从当前时间往前推24小时
|
||||||
|
endTime = new Date(now)
|
||||||
startTime = new Date(now.getTime() - 24 * 60 * 60 * 1000)
|
startTime = new Date(now.getTime() - 24 * 60 * 60 * 1000)
|
||||||
endTime = now
|
|
||||||
break
|
break
|
||||||
case 'yesterday':
|
case 'yesterday':
|
||||||
|
// 昨天:使用UTC时间,避免时区双重转换
|
||||||
startTime = new Date(now)
|
startTime = new Date(now)
|
||||||
startTime.setDate(now.getDate() - 1)
|
startTime.setUTCDate(now.getUTCDate() - 1)
|
||||||
startTime.setHours(0, 0, 0, 0)
|
startTime.setUTCHours(0, 0, 0, 0)
|
||||||
endTime = new Date(startTime)
|
endTime = new Date(startTime)
|
||||||
endTime.setHours(23, 59, 59, 999)
|
endTime.setUTCHours(23, 59, 59, 999)
|
||||||
|
|
||||||
|
// 由于后端会加8小时,我们需要减去8小时
|
||||||
|
startTime = new Date(startTime.getTime() - 8 * 60 * 60 * 1000)
|
||||||
|
endTime = new Date(endTime.getTime() - 8 * 60 * 60 * 1000)
|
||||||
break
|
break
|
||||||
case 'dayBefore':
|
case 'dayBefore':
|
||||||
|
// 前天:使用UTC时间
|
||||||
startTime = new Date(now)
|
startTime = new Date(now)
|
||||||
startTime.setDate(now.getDate() - 2)
|
startTime.setUTCDate(now.getUTCDate() - 2)
|
||||||
startTime.setHours(0, 0, 0, 0)
|
startTime.setUTCHours(0, 0, 0, 0)
|
||||||
endTime = new Date(startTime)
|
endTime = new Date(startTime)
|
||||||
endTime.setHours(23, 59, 59, 999)
|
endTime.setUTCHours(23, 59, 59, 999)
|
||||||
|
|
||||||
|
// 由于后端会加8小时,我们需要减去8小时
|
||||||
|
startTime = new Date(startTime.getTime() - 8 * 60 * 60 * 1000)
|
||||||
|
endTime = new Date(endTime.getTime() - 8 * 60 * 60 * 1000)
|
||||||
break
|
break
|
||||||
default:
|
default:
|
||||||
// 默认近24小时
|
// 默认近24小时
|
||||||
@@ -302,22 +324,33 @@ export const useDashboardStore = defineStore('dashboard', () => {
|
|||||||
// 小时粒度的预设
|
// 小时粒度的预设
|
||||||
switch (preset) {
|
switch (preset) {
|
||||||
case 'last24h':
|
case 'last24h':
|
||||||
|
// 近24小时:从当前时间往前推24小时
|
||||||
|
endDate = new Date(now)
|
||||||
startDate = new Date(now.getTime() - 24 * 60 * 60 * 1000)
|
startDate = new Date(now.getTime() - 24 * 60 * 60 * 1000)
|
||||||
endDate = now
|
|
||||||
break
|
break
|
||||||
case 'yesterday':
|
case 'yesterday':
|
||||||
|
// 昨天:使用UTC时间,避免时区双重转换
|
||||||
startDate = new Date(now)
|
startDate = new Date(now)
|
||||||
startDate.setDate(now.getDate() - 1)
|
startDate.setUTCDate(now.getUTCDate() - 1)
|
||||||
startDate.setHours(0, 0, 0, 0)
|
startDate.setUTCHours(0, 0, 0, 0)
|
||||||
endDate = new Date(startDate)
|
endDate = new Date(startDate)
|
||||||
endDate.setHours(23, 59, 59, 999)
|
endDate.setUTCHours(23, 59, 59, 999)
|
||||||
|
|
||||||
|
// 由于后端会加8小时,我们需要减去8小时
|
||||||
|
startDate = new Date(startDate.getTime() - 8 * 60 * 60 * 1000)
|
||||||
|
endDate = new Date(endDate.getTime() - 8 * 60 * 60 * 1000)
|
||||||
break
|
break
|
||||||
case 'dayBefore':
|
case 'dayBefore':
|
||||||
|
// 前天:使用UTC时间
|
||||||
startDate = new Date(now)
|
startDate = new Date(now)
|
||||||
startDate.setDate(now.getDate() - 2)
|
startDate.setUTCDate(now.getUTCDate() - 2)
|
||||||
startDate.setHours(0, 0, 0, 0)
|
startDate.setUTCHours(0, 0, 0, 0)
|
||||||
endDate = new Date(startDate)
|
endDate = new Date(startDate)
|
||||||
endDate.setHours(23, 59, 59, 999)
|
endDate.setUTCHours(23, 59, 59, 999)
|
||||||
|
|
||||||
|
// 由于后端会加8小时,我们需要减去8小时
|
||||||
|
startDate = new Date(startDate.getTime() - 8 * 60 * 60 * 1000)
|
||||||
|
endDate = new Date(endDate.getTime() - 8 * 60 * 60 * 1000)
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user