6.日期函数(根据moment.js库获取时间段)

import moment from 'moment'
const STANTFORMAT = "YYYY-MM-DD 00:00:00"
const ENDFORMAT = "YYYY-MM-DD 23:59:59"
/**
 * @description: 
 * @param {String} type 
 * ['前日','昨日', '今日', '明日', '上周', '本周', '下周', '上月', '本月', '下月', 
 *  '去年', '今年', '明年', '上季度', '本季度', '下季度']
 * @return {Object} {dateFrom, dateTo}
 */
export function getTimeRange(type) {
    let dateFrom = '', dateTo = ''
    switch (type) {
        case '前日':
            dateFrom = moment().subtract(2, "days").format(STANTFORMAT)
            dateTo = moment().subtract(2, "days").format(ENDFORMAT)
            break;
        case '昨日':
            dateFrom = moment().subtract(1, "days").format(STANTFORMAT)
            dateTo = moment().subtract(1, "days").format(ENDFORMAT)
            break;
        case '今日':
            dateFrom = moment().format(STANTFORMAT)
            dateTo = moment().format(ENDFORMAT)
            break;
        case '明日':
            dateFrom = moment().subtract(-1, 'days').format(STANTFORMAT)
            dateTo = moment().subtract(-1, 'days').format(ENDFORMAT)
            break;
        case '上周':
            dateFrom = moment().day(-6).format(STANTFORMAT)
            dateTo = moment().day(0).format(ENDFORMAT)
            break;
        case '本周':
            dateFrom = moment().day(1).format(STANTFORMAT)
            dateTo = moment().day(7).format(ENDFORMAT)
            break;
        case '下周':
            dateFrom = moment().startOf('week').subtract(-1, 'week').format(STANTFORMAT)
            dateTo = moment().endOf('week').subtract(-1, 'week').format(ENDFORMAT)
            break;
        case '上月':
            dateFrom = moment(new Date()).subtract(1, 'months').startOf('month').format(STANTFORMAT);
            dateTo = moment(new Date()).subtract(1, 'months').endOf('month').format(ENDFORMAT)
            break;
        case '本月':
            dateFrom = moment().startOf("month").format(STANTFORMAT);
            dateTo = moment().endOf("month").format(ENDFORMAT)
            break;
        case '下月':
            dateFrom = moment().month(moment().month() + 1).startOf('month').format(STANTFORMAT);
            dateTo = moment().month(moment().month() + 1).endOf('month').format(ENDFORMAT);
            break;
        case '去年':
            dateFrom = moment(new Date()).subtract(1, 'year').startOf('year').format(STANTFORMAT);
            dateTo = moment(new Date()).subtract(1, 'year').endOf('year').format(ENDFORMAT)
            break;
        case '今年':
            dateFrom = moment().startOf('year').format(STANTFORMAT);
            dateTo = moment().endOf('year').format(ENDFORMAT)
            break;
        case '明年':
            dateFrom = moment().year(moment().year() + 1).startOf('year').format(STANTFORMAT);
            dateTo = moment().year(moment().year() + 1).endOf('year').format(ENDFORMAT);
            break;
        case '上季度':
            dateFrom = moment().quarter(moment().quarter() - 1).startOf('quarter').format(STANTFORMAT);
            dateTo = moment().quarter(moment().quarter() - 1).endOf('quarter').format(ENDFORMAT);
            break;
        case '本季度':
            dateFrom = moment().startOf('quarter').format(STANTFORMAT);
            dateTo = moment().endOf('quarter').format(ENDFORMAT);
            break;
        case '下季度':
            dateFrom = moment().quarter(moment().quarter() + 1).startOf('quarter').format(STANTFORMAT);
            dateTo = moment().quarter(moment().quarter() + 1).endOf('quarter').format(ENDFORMAT);
            break;
    }
    return { dateFrom, dateTo }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值