code refactor
This commit is contained in:
@@ -258,6 +258,31 @@ export function getShiftedDateRange(minTime, maxTime, scale) {
|
|||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function getShiftedDateRangeAndDateType(minTime, maxTime, scale, firstDayOfWeek) {
|
||||||
|
const newDateRange = getShiftedDateRange(minTime, maxTime, scale);
|
||||||
|
let newDateType = dateTimeConstants.allDateRanges.Custom.type;
|
||||||
|
|
||||||
|
for (let dateRangeField in dateTimeConstants.allDateRanges) {
|
||||||
|
if (!Object.prototype.hasOwnProperty.call(dateTimeConstants.allDateRanges, dateRangeField)) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
const dateRangeType = dateTimeConstants.allDateRanges[dateRangeField];
|
||||||
|
const dateRange = getDateRangeByDateType(dateRangeType.type, firstDayOfWeek);
|
||||||
|
|
||||||
|
if (dateRange && dateRange.minTime === newDateRange.minTime && dateRange.maxTime === newDateRange.maxTime) {
|
||||||
|
newDateType = dateRangeType.type;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
dateType: newDateType,
|
||||||
|
minTime: newDateRange.minTime,
|
||||||
|
maxTime: newDateRange.maxTime
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
export function getDateRangeByDateType(dateType, firstDayOfWeek) {
|
export function getDateRangeByDateType(dateType, firstDayOfWeek) {
|
||||||
let maxTime = 0;
|
let maxTime = 0;
|
||||||
let minTime = 0;
|
let minTime = 0;
|
||||||
|
|||||||
@@ -229,7 +229,7 @@ import datetimeConstants from '@/consts/datetime.js';
|
|||||||
import statisticsConstants from '@/consts/statistics.js';
|
import statisticsConstants from '@/consts/statistics.js';
|
||||||
import { getNameByKeyValue, limitText, formatPercent } from '@/lib/common.js'
|
import { getNameByKeyValue, limitText, formatPercent } from '@/lib/common.js'
|
||||||
import {
|
import {
|
||||||
getShiftedDateRange,
|
getShiftedDateRangeAndDateType,
|
||||||
getDateRangeByDateType
|
getDateRangeByDateType
|
||||||
} from '@/lib/datetime.js';
|
} from '@/lib/datetime.js';
|
||||||
|
|
||||||
@@ -518,25 +518,10 @@ export default {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const newDateRange = getShiftedDateRange(startTime, endTime, scale);
|
const newDateRange = getShiftedDateRangeAndDateType(startTime, endTime, scale, this.firstDayOfWeek);
|
||||||
let newDateType = this.allDateRanges.Custom.type;
|
|
||||||
|
|
||||||
for (let dateRangeField in this.allDateRanges) {
|
|
||||||
if (!Object.prototype.hasOwnProperty.call(this.allDateRanges, dateRangeField)) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
const dateRangeType = this.allDateRanges[dateRangeField];
|
|
||||||
const dateRange = getDateRangeByDateType(dateRangeType.type, this.firstDayOfWeek);
|
|
||||||
|
|
||||||
if (dateRange && dateRange.minTime === newDateRange.minTime && dateRange.maxTime === newDateRange.maxTime) {
|
|
||||||
newDateType = dateRangeType.type;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.statisticsStore.updateTransactionStatisticsFilter({
|
this.statisticsStore.updateTransactionStatisticsFilter({
|
||||||
dateType: newDateType,
|
dateType: newDateRange.dateType,
|
||||||
startTime: newDateRange.minTime,
|
startTime: newDateRange.minTime,
|
||||||
endTime: newDateRange.maxTime
|
endTime: newDateRange.maxTime
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -261,7 +261,7 @@ import datetimeConstants from '@/consts/datetime.js';
|
|||||||
import statisticsConstants from '@/consts/statistics.js';
|
import statisticsConstants from '@/consts/statistics.js';
|
||||||
import { getNameByKeyValue, limitText, formatPercent } from '@/lib/common.js'
|
import { getNameByKeyValue, limitText, formatPercent } from '@/lib/common.js'
|
||||||
import {
|
import {
|
||||||
getShiftedDateRange,
|
getShiftedDateRangeAndDateType,
|
||||||
getDateRangeByDateType
|
getDateRangeByDateType
|
||||||
} from '@/lib/datetime.js';
|
} from '@/lib/datetime.js';
|
||||||
|
|
||||||
@@ -527,25 +527,10 @@ export default {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
const newDateRange = getShiftedDateRange(startTime, endTime, scale);
|
const newDateRange = getShiftedDateRangeAndDateType(startTime, endTime, scale, this.firstDayOfWeek);
|
||||||
let newDateType = this.allDateRanges.Custom.type;
|
|
||||||
|
|
||||||
for (let dateRangeField in this.allDateRanges) {
|
|
||||||
if (!Object.prototype.hasOwnProperty.call(this.allDateRanges, dateRangeField)) {
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
const dateRangeType = this.allDateRanges[dateRangeField];
|
|
||||||
const dateRange = getDateRangeByDateType(dateRangeType.type, this.firstDayOfWeek);
|
|
||||||
|
|
||||||
if (dateRange && dateRange.minTime === newDateRange.minTime && dateRange.maxTime === newDateRange.maxTime) {
|
|
||||||
newDateType = dateRangeType.type;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
this.statisticsStore.updateTransactionStatisticsFilter({
|
this.statisticsStore.updateTransactionStatisticsFilter({
|
||||||
dateType: newDateType,
|
dateType: newDateRange.dateType,
|
||||||
startTime: newDateRange.minTime,
|
startTime: newDateRange.minTime,
|
||||||
endTime: newDateRange.maxTime
|
endTime: newDateRange.maxTime
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user