查询以时间条件的报表。
getCurrentDate () {
// 获取当前时间
return new Date()
},
formatDate (date) {
// 格式化时间为yyyy-mm-dd
var d = new Date(date)
var month = '' + (d.getMonth() + 1)
var day = '' + d.getDate()
var year = d.getFullYear()
if (month.length < 2) month = '0' + month
if (day.length < 2) day = '0' + day
return [year, month, day].join('-')
},
checkWeekTime () {
// 获取当前时间
var currentDate = this.getCurrentDate()
// 返回date是一周中的某一天
var week = currentDate.getDay()
// 返回date是一个月中的某一天
// var month = currentDate.getDate()
// 一天的毫秒数
var millisecond = 1000 * 60 * 60 * 24
// 减去的天数
var minusDay = week !== 0 ? week - 1 : 6
// alert(minusDay);
// 本周 周一
var monday = new Date(currentDate.getTime() - (minusDay * millisecond))
// 本周 周日
var sunday = new Date(monday.getTime() + (6 * millisecond))
// 添加本周时间
this.queryVo.dcreatedateBegin = this.formatDate(monday) // 本周起始时间
// 添加本周最后一天时间
this.queryVo.dcreatedateEnd = this.formatDate(sunday) // 本周终止时间
},
checkMonthTime () {
// 获取当前时间
var currentDate = this.getCurrentDate()
// 获得当前月份0-11
var currentMonth = currentDate.getMonth()
// 获得当前年份4位年
var currentYear = currentDate.getFullYear()
// 求出本月第一天
var firstDay = new Date(currentYear, currentMonth, 1)
// 当为12月的时候年份需要加1
// 月份需要更新为0 也就是下一年的第一个月
if (currentMonth === 11) {
currentYear++
currentMonth = 0 // 就为
} else {
// 否则只是月份增加,以便求的下一月的第一天
currentMonth++
}
// 一天的毫秒数
var millisecond = 1000 * 60 * 60 * 24
// 下月的第一天
var nextMonthDayOne = new Date(currentYear, currentMonth, 1)
// 求出上月的最后一天
var lastDay = new Date(nextMonthDayOne.getTime() - millisecond)
this.queryVo.dcreatedateBegin = this.formatDate(firstDay) // 本月起始时间
// 添加本周最后一天时间
this.queryVo.dcreatedateEnd = this.formatDate(lastDay) // 本月终止时间
},
checkQuarterTime () {
// 获取当前时间
var currentDate = this.getCurrentDate()
// 获得当前月份0-11
var currentMonth = currentDate.getMonth()
// 获得当前年份4位年
var currentYear = currentDate.getFullYear()
// 获得本季度开始月份
var quarterSeasonStartMonth = this.getQuarterSeasonStartMonth(currentMonth)
// 获得本季度结束月份
var quarterSeasonEndMonth = quarterSeasonStartMonth + 2
// 获得本季度开始的日期
var quarterSeasonStartDate = new Date(currentYear, quarterSeasonStartMonth, 1)
// 获得本季度结束的日期
var quarterSeasonEndDate = new Date(currentYear, quarterSeasonEndMonth, this.getMonthDays(currentYear, quarterSeasonEndMonth))
this.queryVo.dcreatedateBegin = this.formatDate(quarterSeasonStartDate) // 本季度起始时间
// 添加本周最后一天时间
this.queryVo.dcreatedateEnd = this.formatDate(quarterSeasonEndDate) // 本季度终止时间
},
getQuarterSeasonStartMonth (month) {
// 得到本季度开始的月份
var spring = 0 // 春
var summer = 3 // 夏
var fall = 6 // 秋
var winter = 9 // 冬
// 月份从0-11
if (month < 3) {
return spring
}
if (month < 6) {
return summer
}
if (month < 9) {
return fall
}
return winter
},
getMonthDays (year, month) {
// 获得该月的天数
// 本月第一天 1-31
var relativeDate = new Date(year, month, 1)
// 获得当前月份0-11
var relativeMonth = relativeDate.getMonth()
// 获得当前年份4位年
var relativeYear = relativeDate.getFullYear()
// 当为12月的时候年份需要加1
// 月份需要更新为0 也就是下一年的第一个月
if (relativeMonth === 11) {
relativeYear++
relativeMonth = 0
} else {
// 否则只是月份增加,以便求的下一月的第一天
relativeMonth++
}
// 一天的毫秒数
var millisecond = 1000 * 60 * 60 * 24
// 下月的第一天
var nextMonthDayOne = new Date(relativeYear, relativeMonth, 1)
// 返回得到上月的最后一天,也就是本月总天数
return new Date(nextMonthDayOne.getTime() - millisecond).getDate()
}