UNPKG

vue-django

Version:

个人实验项目, 本框架的目标是借鉴并超越django admin的自动化思想, 实现UI前端的极简快速定制开发

141 lines (129 loc) 3.43 kB
/** * Created by denishuang on 2018/7/6. */ import dateUtil from 'element-ui/src/utils/date' export var today = function () { let d = new Date() d.setHours(0) d.setMinutes(0) d.setSeconds(0) return d } export var addDays = function (d, days) { d.setTime(d.getTime() + day_seconds * days) return d } const DFMT = 'yyyy-MM-ddTHH:mm:ss+08:00' // const DFMT0 = "yyyy-MM-ddT00:00:00+08:00" export var recent_nday = function (n) { const end = new Date() const start = new Date() addDays(start, n && -n) return [dateUtil.format(start, DFMT), dateUtil.format(end, DFMT)] } const day_seconds = 3600 * 1000 * 24 export var options_with_time = { shortcuts: [{ text: '最近一天', onClick(picker) { picker.$emit('pick', recent_nday(1)) } }, { text: '最近一周', onClick(picker) { picker.$emit('pick', recent_nday(7)) } }, { text: '最近一个月', onClick(picker) { picker.$emit('pick',recent_nday(30)) } }, { text: '最近三个月', onClick(picker) { picker.$emit('pick', recent_nday(90)) } }] } export var period_today = function () { const end = today() const start = today() addDays(end, 1) return [dateUtil.format(start, DFMT), dateUtil.format(end, DFMT)] } export var period_yesterday=function () { const end = today() const start = today() addDays(start, -1) return [dateUtil.format(start, DFMT), dateUtil.format(end, DFMT)] } export var period_this_week=function () { const end = today() const start = today() let wd = end.getDay() wd = wd == 0 ? 7 : wd addDays(end, 8 - wd) addDays(start, 1 - wd) return [dateUtil.format(start, DFMT), dateUtil.format(end, DFMT)] } export var period_las_week=function () { const end = today() const start = today() let wd = end.getDay() wd = wd == 0 ? 7 : wd addDays(end, 1 - wd) addDays(start, -6 - wd) return [dateUtil.format(start, DFMT), dateUtil.format(end, DFMT)] } export var period_this_month=function () { const end = today() const start = today() end.setDate(1) addDays(end, 31) end.setDate(1) start.setDate(1) return [dateUtil.format(start, DFMT), dateUtil.format(end, DFMT)] } export var period_last_month=function () { const end = today() const start = today() end.setDate(1) start.setDate(1) addDays(start, -1) start.setDate(1) return [dateUtil.format(start, DFMT), dateUtil.format(end, DFMT)] } export var options_without_time = { shortcuts: [{ text: '今天', onClick(picker) { picker.$emit('pick', period_today()) } }, { text: '昨天', onClick(picker) { picker.$emit('pick',period_yesterday()) } }, { text: '本周', onClick(picker) { picker.$emit('pick', period_this_week()) } }, { text: '上周', onClick(picker) { picker.$emit('pick',period_las_week()) } }, { text: '本月', onClick(picker) { picker.$emit('pick', period_this_month()) } }, { text: '上月', onClick(picker) { picker.$emit('pick', period_last_month()) } }] } export default options_with_time