code refactor

This commit is contained in:
MaysWind
2025-08-24 23:07:18 +08:00
parent 0408c470fc
commit f196ce969b
2 changed files with 21 additions and 5 deletions
+14
View File
@@ -104,6 +104,20 @@ export function isPM(hour: number): boolean {
}
}
export function isUnixTimeYearMonthDayEquals(unixTime1: number, unixTime2: number): boolean {
const date1 = moment.unix(unixTime1);
const date2 = moment.unix(unixTime2);
return date1.year() === date2.year() && date1.month() === date2.month() && date1.date() === date2.date();
}
export function isUnixTimeYearMonthDayHourEquals(unixTime1: number, unixTime2: number): boolean {
const date1 = moment.unix(unixTime1);
const date2 = moment.unix(unixTime2);
return date1.year() === date2.year() && date1.month() === date2.month() && date1.date() === date2.date() && date1.hour() === date2.hour();
}
export function getUtcOffsetByUtcOffsetMinutes(utcOffsetMinutes: number): string {
const offsetHours = Math.trunc(Math.abs(utcOffsetMinutes) / 60);
const offsetMinutes = Math.abs(utcOffsetMinutes) - offsetHours * 60;
+7 -5
View File
@@ -10,7 +10,11 @@ import type {
} from '@/models/exchange_rate.ts';
import { isEquals } from '@/lib/common.ts';
import { getCurrentUnixTime, formatUnixTime } from '@/lib/datetime.ts';
import {
isUnixTimeYearMonthDayEquals,
isUnixTimeYearMonthDayHourEquals,
getCurrentUnixTime
} from '@/lib/datetime.ts';
import { getExchangedAmountByRate } from '@/lib/numeral.ts';
import logger from '@/lib/logger.ts';
@@ -128,13 +132,11 @@ export const useExchangeRatesStore = defineStore('exchangeRates', () => {
const now = getCurrentUnixTime();
if (!force) {
if (currentExchangeRateData && currentExchangeRateData.time && currentExchangeRateData.data &&
formatUnixTime(currentExchangeRateData.data.updateTime, 'YYYY-MM-DD') === formatUnixTime(now, 'YYYY-MM-DD')) {
if (currentExchangeRateData && currentExchangeRateData.time && currentExchangeRateData.data && isUnixTimeYearMonthDayEquals(currentExchangeRateData.data.updateTime, now)) {
return Promise.resolve(currentExchangeRateData.data);
}
if (currentExchangeRateData && currentExchangeRateData.time && currentExchangeRateData.data &&
formatUnixTime(currentExchangeRateData.time, 'YYYY-MM-DD HH') === formatUnixTime(now, 'YYYY-MM-DD HH')) {
if (currentExchangeRateData && currentExchangeRateData.time && currentExchangeRateData.data && isUnixTimeYearMonthDayHourEquals(currentExchangeRateData.time, now)) {
return Promise.resolve(currentExchangeRateData.data);
}
}