mirror of
https://github.com/mayswind/ezbookkeeping.git
synced 2026-05-19 09:14:27 +08:00
fix the date ranges of income and expense trends in home page is wrong (#49)
This commit is contained in:
+47
-78
@@ -102,68 +102,7 @@ export const useOverviewStore = defineStore('overview', () => {
|
|||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
const exchangeRatesStore = useExchangeRatesStore();
|
const exchangeRatesStore = useExchangeRatesStore();
|
||||||
|
|
||||||
const transactionDataRange = ref<TransactionDataRange>({
|
const transactionDataRange = ref<TransactionDataRange>(getTransactionDateRange());
|
||||||
today: {
|
|
||||||
startTime: getTodayFirstUnixTime(),
|
|
||||||
endTime: getTodayLastUnixTime()
|
|
||||||
},
|
|
||||||
thisWeek: {
|
|
||||||
startTime: getThisWeekFirstUnixTime(userStore.currentUserFirstDayOfWeek),
|
|
||||||
endTime: getThisWeekLastUnixTime(userStore.currentUserFirstDayOfWeek)
|
|
||||||
},
|
|
||||||
thisMonth: {
|
|
||||||
startTime: getThisMonthFirstUnixTime(),
|
|
||||||
endTime: getThisMonthLastUnixTime()
|
|
||||||
},
|
|
||||||
thisYear: {
|
|
||||||
startTime: getThisYearFirstUnixTime(),
|
|
||||||
endTime: getThisYearLastUnixTime()
|
|
||||||
},
|
|
||||||
lastMonth: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 1, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 1, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLastMonth: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 2, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 2, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast2Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 3, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 3, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast3Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 4, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 4, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast4Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 5, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 5, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast5Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 6, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 6, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast6Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 7, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 7, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast7Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 8, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 8, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast8Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 9, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 9, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast9Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 10, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 10, 'months')
|
|
||||||
},
|
|
||||||
monthBeforeLast10Months: {
|
|
||||||
startTime: getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 11, 'months'),
|
|
||||||
endTime: getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 11, 'months')
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const transactionOverviewOptions = ref<TransactionOverviewOptions>({
|
const transactionOverviewOptions = ref<TransactionOverviewOptions>({
|
||||||
loadLast11Months: false
|
loadLast11Months: false
|
||||||
@@ -241,31 +180,61 @@ export const useOverviewStore = defineStore('overview', () => {
|
|||||||
return finalOverviewData;
|
return finalOverviewData;
|
||||||
});
|
});
|
||||||
|
|
||||||
function updateTransactionDateRange(): void {
|
function getTransactionDateRange(): TransactionDataRange {
|
||||||
transactionDataRange.value.today.startTime = getTodayFirstUnixTime();
|
const dateRange: TransactionDataRange = {
|
||||||
transactionDataRange.value.today.endTime = getTodayLastUnixTime();
|
today: { startTime: 0, endTime: 0 },
|
||||||
|
thisWeek: { startTime: 0, endTime: 0 },
|
||||||
|
thisMonth: { startTime: 0, endTime: 0 },
|
||||||
|
thisYear: { startTime: 0, endTime: 0 },
|
||||||
|
lastMonth: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLastMonth: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast2Months: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast3Months: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast4Months: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast5Months: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast6Months: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast7Months: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast8Months: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast9Months: { startTime: 0, endTime: 0 },
|
||||||
|
monthBeforeLast10Months: { startTime: 0, endTime: 0 }
|
||||||
|
};
|
||||||
|
|
||||||
transactionDataRange.value.thisWeek.startTime = getThisWeekFirstUnixTime(userStore.currentUserFirstDayOfWeek);
|
initTransactionDateRange(dateRange);
|
||||||
transactionDataRange.value.thisWeek.endTime = getThisWeekLastUnixTime(userStore.currentUserFirstDayOfWeek);
|
return dateRange;
|
||||||
|
}
|
||||||
|
|
||||||
transactionDataRange.value.thisMonth.startTime = getThisMonthFirstUnixTime();
|
function initTransactionDateRange(dateRange: TransactionDataRange): void {
|
||||||
transactionDataRange.value.thisMonth.endTime = getThisMonthLastUnixTime();
|
dateRange.today.startTime = getTodayFirstUnixTime();
|
||||||
|
dateRange.today.endTime = getTodayLastUnixTime();
|
||||||
|
|
||||||
transactionDataRange.value.thisYear.startTime = getThisYearFirstUnixTime();
|
dateRange.thisWeek.startTime = getThisWeekFirstUnixTime(userStore.currentUserFirstDayOfWeek);
|
||||||
transactionDataRange.value.thisYear.endTime = getThisYearLastUnixTime();
|
dateRange.thisWeek.endTime = getThisWeekLastUnixTime(userStore.currentUserFirstDayOfWeek);
|
||||||
|
|
||||||
transactionDataRange.value.lastMonth.startTime = getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 1, 'months');
|
dateRange.thisMonth.startTime = getThisMonthFirstUnixTime();
|
||||||
transactionDataRange.value.lastMonth.endTime = getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 1, 'months');
|
dateRange.thisMonth.endTime = getThisMonthLastUnixTime();
|
||||||
|
|
||||||
transactionDataRange.value.monthBeforeLastMonth.startTime = getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 2, 'months');
|
dateRange.thisYear.startTime = getThisYearFirstUnixTime();
|
||||||
transactionDataRange.value.monthBeforeLastMonth.endTime = getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), 2, 'months');
|
dateRange.thisYear.endTime = getThisYearLastUnixTime();
|
||||||
|
|
||||||
for (let i = 2; i <= 10; i++) {
|
dateRange.lastMonth.startTime = getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 1, 'months');
|
||||||
transactionDataRange.value[`monthBeforeLast${i}Months` as TransactionAmountsRequestType].startTime = getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), i + 1, 'months');
|
dateRange.lastMonth.endTime = getUnixTimeBeforeUnixTime(getThisMonthFirstUnixTime(), 1, 'seconds');
|
||||||
transactionDataRange.value[`monthBeforeLast${i}Months` as TransactionAmountsRequestType].endTime = getUnixTimeBeforeUnixTime(getThisMonthLastUnixTime(), i + 1, 'months');
|
|
||||||
|
dateRange.monthBeforeLastMonth.startTime = getUnixTimeBeforeUnixTime(dateRange.lastMonth.startTime, 1, 'months');
|
||||||
|
dateRange.monthBeforeLastMonth.endTime = getUnixTimeBeforeUnixTime(dateRange.lastMonth.startTime, 1, 'seconds');
|
||||||
|
|
||||||
|
dateRange.monthBeforeLast2Months.startTime = getUnixTimeBeforeUnixTime(dateRange.monthBeforeLastMonth.startTime, 1, 'months');
|
||||||
|
dateRange.monthBeforeLast2Months.endTime = getUnixTimeBeforeUnixTime(dateRange.monthBeforeLastMonth.startTime, 1, 'seconds');
|
||||||
|
|
||||||
|
for (let i = 3; i <= 10; i++) {
|
||||||
|
dateRange[`monthBeforeLast${i}Months` as TransactionAmountsRequestType].startTime = getUnixTimeBeforeUnixTime(dateRange[`monthBeforeLast${i - 1}Months` as TransactionAmountsRequestType].startTime, 1, 'months');
|
||||||
|
dateRange[`monthBeforeLast${i}Months` as TransactionAmountsRequestType].endTime = getUnixTimeBeforeUnixTime(dateRange[`monthBeforeLast${i - 1}Months` as TransactionAmountsRequestType].startTime, 1, 'seconds');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function updateTransactionDateRange(): void {
|
||||||
|
initTransactionDateRange(transactionDataRange.value);
|
||||||
|
}
|
||||||
|
|
||||||
function updateTransactionOverviewInvalidState(invalidState: boolean): void {
|
function updateTransactionOverviewInvalidState(invalidState: boolean): void {
|
||||||
transactionOverviewStateInvalid.value = invalidState;
|
transactionOverviewStateInvalid.value = invalidState;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user