/var/www/p4ela.kz/server/delivery/api/utils
Edit: /var/www/p4ela.kz/server/delivery/api/utils/date.js (4666B)
exports.getDateByDateRange = function (range, format) {
if (!range) return
let beginDate = new Date()
let endDate = new Date()
switch (range) {
case DATE.RANGE.HOUR:
beginDate.setHours(endDate.getHours() - 1)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
case DATE.RANGE.DAY:
beginDate.setHours(endDate.getHours() - 23)
beginDate.setMinutes(0)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setMinutes(59)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
case DATE.RANGE.WEEK:
beginDate.setDate(endDate.getDate() - 7)
beginDate.setHours(0)
beginDate.setMinutes(0)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setHours(23)
endDate.setMinutes(59)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
case DATE.RANGE.MONTH:
beginDate.setMonth(endDate.getMonth() - 1)
beginDate.setHours(0)
beginDate.setMinutes(0)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setHours(23)
endDate.setMinutes(59)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
case DATE.RANGE.YEAR:
beginDate.setFullYear(endDate.getFullYear() - 1)
break
case DATE.RANGE.CURRENT_HOUR:
beginDate.setMinutes(0)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setMinutes(59)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
case DATE.RANGE.CURRENT_DAY:
beginDate.setHours(0)
beginDate.setMinutes(0)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setHours(23)
endDate.setMinutes(59)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
case DATE.RANGE.CURRENT_WEEK:
const dayOfWeek = beginDate.getDay()
let days
if (dayOfWeek == 0) {
days = 6
} else {
days = dayOfWeek - 1
}
beginDate.setDate(beginDate.getDate() - days)
beginDate.setHours(0)
beginDate.setMinutes(0)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setDate(beginDate.getDate() + 6)
endDate.setHours(23)
endDate.setMinutes(59)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
case DATE.RANGE.CURRENT_MONTH:
beginDate.setDate(1)
beginDate.setHours(0)
beginDate.setMinutes(0)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setDate(
new Date(beginDate.getFullYear(), beginDate.getMonth() + 1, 0).getDate()
)
endDate.setHours(23)
endDate.setMinutes(59)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
case DATE.RANGE.CURRENT_YEAR:
beginDate.setMonth(0)
beginDate.setDate(1)
beginDate.setHours(0)
beginDate.setMinutes(0)
beginDate.setSeconds(0)
beginDate.setMilliseconds(0)
endDate.setMonth(11)
endDate.setDate(
new Date(beginDate.getFullYear(), beginDate.getMonth() + 1, 0).getDate()
)
endDate.setHours(23)
endDate.setMinutes(59)
endDate.setSeconds(59)
endDate.setMilliseconds(999)
break
default:
return
}
switch (format) {
case DATE.FORMAT.TIMESTAMP:
return {
begin: parseInt(beginDate.getTime()),
end: parseInt(endDate.getTime())
}
case DATE.FORMAT.TIMESTAMP_UNIX:
return {
begin: Math.floor(beginDate.getTime() / 1000.0),
end: Math.floor(endDate.getTime() / 1000.0)
}
case DATE.FORMAT.LOCAL:
return {
begin: beginDate.toLocaleString(),
end: endDate.toLocaleString()
}
default:
return {
begin: beginDate,
end: endDate
}
}
}
exports.daysOfWeekList = function (lang) {
const list = ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat']
if (!lang) return list
switch (lang) {
case 'ru':
return ['Вс', 'Пн', 'Вт', 'Ср', 'Чт', 'Пт', 'Сб']
default:
return list
}
}
exports.monthsList = function (lang) {
let list = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec']
if (!lang) return list
switch (lang) {
case 'ru':
list = [
'Янв',
'Фев',
'Март',
'Апр',
'Май',
'Июнь',
'Июль',
'Авг',
'Сен',
'Окт',
'Ноя',
'Дек'
]
default:
break
}
return list
}
exports.hoursList = function (lang) {
let list = []
if (!lang) return list
switch (lang) {
case 'ru':
for (let i = 0; i < 24; i++) {
if (i < 0) {
list.push('0' + i + '')
} else {
list.push(i + '')
}
}
break
default:
for (let i = 0; i < 24; i++) {
if (i < 0) {
list.push('0' + i + '')
} else {
list.push(i + '')
}
}
break
}
return list
}