code refactor

This commit is contained in:
MaysWind
2021-03-14 20:13:56 +08:00
parent 3dbb161d78
commit aa557613ca
5 changed files with 25 additions and 16 deletions
+9 -6
View File
@@ -5,13 +5,16 @@ export default function (value, format, options) {
value = utils.getUnixTime(value); value = utils.getUnixTime(value);
} }
if (utils.isObject(options) && utils.isNumber(options.utcOffset)) { let utcOffset = null;
if (!utils.isNumber(options.currentUtcOffset)) { let currentUtcOffset = null;
options.currentUtcOffset = utils.getTimezoneOffsetMinutes();
}
value = utils.getDummyUnixTimeForLocalDisplay(value, options.utcOffset, options.currentUtcOffset); if (utils.isObject(options) && utils.isNumber(options.utcOffset)) {
utcOffset = options.utcOffset;
} }
return utils.formatUnixTime(value, format); if (utils.isObject(options) && utils.isNumber(options.currentUtcOffset)) {
currentUtcOffset = options.currentUtcOffset;
}
return utils.formatUnixTime(value, format, utcOffset, currentUtcOffset);
} }
+13 -5
View File
@@ -84,7 +84,7 @@ function getActualUnixTimeForStore(unixTime, utcOffset, currentUtcOffset) {
return unixTime - (utcOffset - currentUtcOffset) * 60; return unixTime - (utcOffset - currentUtcOffset) * 60;
} }
function getDummyUnixTimeForLocalDisplay(unixTime, utcOffset, currentUtcOffset) { function getDummyUnixTimeForLocalUsage(unixTime, utcOffset, currentUtcOffset) {
return unixTime + (utcOffset - currentUtcOffset) * 60; return unixTime + (utcOffset - currentUtcOffset) * 60;
} }
@@ -92,12 +92,20 @@ function getCurrentUnixTime() {
return moment().unix(); return moment().unix();
} }
function parseDateFromUnixTime(unixTime) { function parseDateFromUnixTime(unixTime, utcOffset, currentUtcOffset) {
if (isNumber(utcOffset)) {
if (!isNumber(currentUtcOffset)) {
currentUtcOffset = getTimezoneOffsetMinutes();
}
unixTime = getDummyUnixTimeForLocalUsage(unixTime, utcOffset, currentUtcOffset);
}
return moment.unix(unixTime); return moment.unix(unixTime);
} }
function formatUnixTime(unixTime, format) { function formatUnixTime(unixTime, format, utcOffset, currentUtcOffset) {
return moment.unix(unixTime).format(format); return parseDateFromUnixTime(unixTime, utcOffset, currentUtcOffset).format(format);
} }
function formatTime(dateTime, format) { function formatTime(dateTime, format) {
@@ -625,7 +633,7 @@ export default {
getTimezoneOffset, getTimezoneOffset,
getTimezoneOffsetMinutes, getTimezoneOffsetMinutes,
getActualUnixTimeForStore, getActualUnixTimeForStore,
getDummyUnixTimeForLocalDisplay, getDummyUnixTimeForLocalUsage,
getCurrentUnixTime, getCurrentUnixTime,
parseDateFromUnixTime, parseDateFromUnixTime,
formatUnixTime, formatUnixTime,
+1 -2
View File
@@ -425,8 +425,7 @@ const stores = {
const item = transactions.items[i]; const item = transactions.items[i];
fillTransactionObject(state, item, currentUtcOffset); fillTransactionObject(state, item, currentUtcOffset);
const transactionUnixTimeForLocalUsage = utils.getDummyUnixTimeForLocalDisplay(item.time, item.utcOffset, currentUtcOffset); const transactionTime = utils.parseDateFromUnixTime(item.time, item.utcOffset, currentUtcOffset);
const transactionTime = utils.parseDateFromUnixTime(transactionUnixTimeForLocalUsage);
const transactionYear = utils.getYear(transactionTime); const transactionYear = utils.getYear(transactionTime);
const transactionMonth = utils.getMonth(transactionTime); const transactionMonth = utils.getMonth(transactionTime);
const transactionYearMonth = utils.getYearAndMonth(transactionTime); const transactionYearMonth = utils.getYearAndMonth(transactionTime);
+1 -2
View File
@@ -284,8 +284,7 @@ export function fillTransactionObject(state, transaction, currentUtcOffset) {
return; return;
} }
const transactionUnixTimeForLocalUsage = utils.getDummyUnixTimeForLocalDisplay(transaction.time, transaction.utcOffset, currentUtcOffset); const transactionTime = utils.parseDateFromUnixTime(transaction.time, transaction.utcOffset, currentUtcOffset);
const transactionTime = utils.parseDateFromUnixTime(transactionUnixTimeForLocalUsage);
transaction.day = utils.getDay(transactionTime); transaction.day = utils.getDay(transactionTime);
transaction.dayOfWeek = utils.getDayOfWeek(transactionTime); transaction.dayOfWeek = utils.getDayOfWeek(transactionTime);
+1 -1
View File
@@ -643,7 +643,7 @@ export default {
if (self.mode === 'edit' || self.mode === 'view') { if (self.mode === 'edit' || self.mode === 'view') {
self.transaction.utcOffset = transaction.utcOffset; self.transaction.utcOffset = transaction.utcOffset;
self.transaction.timeZone = null; self.transaction.timeZone = null;
self.transaction.unixTime = self.$utilities.getDummyUnixTimeForLocalDisplay(transaction.time, self.transaction.utcOffset, self.$utilities.getTimezoneOffsetMinutes()); self.transaction.unixTime = self.$utilities.getDummyUnixTimeForLocalUsage(transaction.time, self.transaction.utcOffset, self.$utilities.getTimezoneOffsetMinutes());
self.transaction.time = self.$utilities.formatUnixTime(self.transaction.unixTime, 'YYYY-MM-DDTHH:mm'); self.transaction.time = self.$utilities.formatUnixTime(self.transaction.unixTime, 'YYYY-MM-DDTHH:mm');
} }