add time-based categories "Transaction Day of Week", "Transaction Day of Month", "Transaction Month of Year" and "Transaction Quarter of Year" in insights & explore
This commit is contained in:
@@ -42,6 +42,8 @@ import {
|
||||
isEquals,
|
||||
} from '@/lib/common.ts';
|
||||
import {
|
||||
parseDateTimeFromUnixTime,
|
||||
parseDateTimeFromUnixTimeWithTimezoneOffset,
|
||||
getYearFirstUnixTimeBySpecifiedUnixTime,
|
||||
getQuarterFirstUnixTimeBySpecifiedUnixTime,
|
||||
getMonthFirstUnixTimeBySpecifiedUnixTime,
|
||||
@@ -203,6 +205,38 @@ export const useExploresStore = defineStore('explores', () => {
|
||||
categoryId: unixTime,
|
||||
categoryIdType: TransactionExploreDimensionType.Other
|
||||
};
|
||||
} else if (dimension === TransactionExploreDataDimension.DateTimeByDayOfWeek) {
|
||||
const dateTime = isDefined(transactionTimeUtfOffset) ? parseDateTimeFromUnixTimeWithTimezoneOffset(transaction.time, transactionTimeUtfOffset) : parseDateTimeFromUnixTime(transaction.time);
|
||||
|
||||
return {
|
||||
categoryName: dateTime.getWeekDay().name,
|
||||
categoryId: dateTime.getWeekDay().type.toString(10),
|
||||
categoryIdType: TransactionExploreDimensionType.Other
|
||||
};
|
||||
} else if (dimension === TransactionExploreDataDimension.DateTimeByDayOfMonth) {
|
||||
const dateTime = isDefined(transactionTimeUtfOffset) ? parseDateTimeFromUnixTimeWithTimezoneOffset(transaction.time, transactionTimeUtfOffset) : parseDateTimeFromUnixTime(transaction.time);
|
||||
|
||||
return {
|
||||
categoryName: dateTime.getGregorianCalendarDay().toString(10),
|
||||
categoryId: dateTime.getGregorianCalendarDay().toString(10),
|
||||
categoryIdType: TransactionExploreDimensionType.Other
|
||||
};
|
||||
} else if (dimension === TransactionExploreDataDimension.DateTimeByMonthOfYear) {
|
||||
const dateTime = isDefined(transactionTimeUtfOffset) ? parseDateTimeFromUnixTimeWithTimezoneOffset(transaction.time, transactionTimeUtfOffset) : parseDateTimeFromUnixTime(transaction.time);
|
||||
|
||||
return {
|
||||
categoryName: dateTime.getGregorianCalendarMonth().toString(10),
|
||||
categoryId: dateTime.getGregorianCalendarMonth().toString(10),
|
||||
categoryIdType: TransactionExploreDimensionType.Other
|
||||
};
|
||||
} else if (dimension === TransactionExploreDataDimension.DateTimeByQuarterOfYear) {
|
||||
const dateTime = isDefined(transactionTimeUtfOffset) ? parseDateTimeFromUnixTimeWithTimezoneOffset(transaction.time, transactionTimeUtfOffset) : parseDateTimeFromUnixTime(transaction.time);
|
||||
|
||||
return {
|
||||
categoryName: dateTime.getGregorianCalendarQuarter().toString(10),
|
||||
categoryId: dateTime.getGregorianCalendarQuarter().toString(10),
|
||||
categoryIdType: TransactionExploreDimensionType.Other
|
||||
};
|
||||
} else if (dimension === TransactionExploreDataDimension.TransactionType) {
|
||||
let transactionTypeName = 'Unknown';
|
||||
|
||||
|
||||
Reference in New Issue
Block a user