support setting timezone type for the time range of statistical data

This commit is contained in:
MaysWind
2024-04-12 09:51:01 +08:00
parent 14f6de8af1
commit ea32bfa5fc
18 changed files with 398 additions and 31 deletions
@@ -109,6 +109,18 @@
v-model="showAmountInHomePage"
/>
</v-col>
<v-col cols="12" md="6">
<v-select
item-title="displayName"
item-value="type"
persistent-placeholder
:label="$t('Timezone Used for Statistics')"
:placeholder="$t('Timezone Used for Statistics')"
:items="allTimezoneTypesUsedForStatistics"
v-model="timezoneUsedForStatisticsInHomePage"
/>
</v-col>
</v-row>
</v-card-text>
</v-form>
@@ -197,6 +209,9 @@ export default {
allCurrencyDisplayModes() {
return currencyConstants.allCurrencyDisplayModes;
},
allTimezoneTypesUsedForStatistics() {
return this.$locale.getAllTimezoneTypesUsedForStatistics(this.timeZone);
},
theme: {
get: function () {
return this.settingsStore.appSettings.theme;
@@ -265,6 +280,15 @@ export default {
this.settingsStore.setShowAmountInHomePage(value);
}
},
timezoneUsedForStatisticsInHomePage: {
get: function () {
return this.settingsStore.appSettings.timezoneUsedForStatisticsInHomePage;
},
set: function (value) {
this.settingsStore.setTimezoneUsedForStatisticsInHomePage(value);
this.overviewStore.updateTransactionOverviewInvalidState(true);
}
},
showTotalAmountInTransactionListPage: {
get: function () {
return this.settingsStore.appSettings.showTotalAmountInTransactionListPage;
@@ -44,6 +44,18 @@
/>
</v-col>
<v-col cols="12" md="6">
<v-select
item-title="displayName"
item-value="type"
persistent-placeholder
:label="$t('Timezone Used for Date Range')"
:placeholder="$t('Timezone Used for Date Range')"
:items="allTimezoneTypesUsedForStatistics"
v-model="defaultTimezoneType"
/>
</v-col>
<v-col cols="12" md="6">
<v-select
item-title="displayName"
@@ -99,6 +111,9 @@ export default {
allDateRanges() {
return this.$locale.getAllDateRanges(false);
},
allTimezoneTypesUsedForStatistics() {
return this.$locale.getAllTimezoneTypesUsedForStatistics();
},
defaultChartType: {
get: function () {
return this.settingsStore.appSettings.statistics.defaultChartType;
@@ -123,6 +138,14 @@ export default {
this.settingsStore.setStatisticsDefaultDateRange(value);
}
},
defaultTimezoneType: {
get: function () {
return this.settingsStore.appSettings.statistics.defaultTimezoneType;
},
set: function (value) {
this.settingsStore.setStatisticsDefaultTimezoneType(value);
}
},
defaultSortingType: {
get: function () {
return this.settingsStore.appSettings.statistics.defaultSortingType;