import moment from 'moment';
|
|
export function fixedZero(val: number) {
|
return val * 1 < 10 ? `0${val}` : val;
|
}
|
|
export function getTimeDistance(type: string): moment.Moment[] {
|
const now = new Date();
|
const oneDay = 1000 * 60 * 60 * 24;
|
|
if (type === 'today') {
|
now.setHours(0);
|
now.setMinutes(0);
|
now.setSeconds(0);
|
return [moment(now), moment(now.getTime() + (oneDay - 1000))];
|
}
|
|
if (type === 'week') {
|
let day = now.getDay();
|
now.setHours(0);
|
now.setMinutes(0);
|
now.setSeconds(0);
|
|
if (day === 0) {
|
day = 6;
|
} else {
|
day -= 1;
|
}
|
|
const beginTime = now.getTime() - day * oneDay;
|
|
return [moment(beginTime), moment(beginTime + (7 * oneDay - 1000))];
|
}
|
|
if (type === 'month') {
|
const year = now.getFullYear();
|
const month = now.getMonth();
|
const nextDate = moment(now).add(1, 'months');
|
const nextYear = nextDate.year();
|
const nextMonth = nextDate.month();
|
|
return [
|
moment(`${year}-${fixedZero(month + 1)}-01 00:00:00`),
|
moment(moment(`${nextYear}-${fixedZero(nextMonth + 1)}-01 00:00:00`).valueOf() - 1000),
|
];
|
}
|
|
const year1 = now.getFullYear();
|
return [moment(`${year1}-01-01 00:00:00`), moment(`${year1}-12-31 23:59:59`)];
|
}
|