40 lines
1.3 KiB
Go
40 lines
1.3 KiB
Go
package utils
|
||
|
||
import "time"
|
||
|
||
// TimeToMilliseconds 时间转毫秒时间戳
|
||
func TimeToMilliseconds(t time.Time) int64 {
|
||
return t.UnixNano() / 1e6
|
||
}
|
||
|
||
// DateToMilliseconds 日期转毫秒时间戳(00:00:00)
|
||
func DateToMilliseconds(year, month, day int) int64 {
|
||
t := time.Date(year, time.Month(month), day, 0, 0, 0, 0, time.Local)
|
||
return TimeToMilliseconds(t)
|
||
}
|
||
|
||
// TodayMilliseconds 获取今天的时间戳范围
|
||
func TodayMilliseconds() (int64, int64) {
|
||
now := time.Now()
|
||
start := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, now.Location())
|
||
end := start.AddDate(0, 0, 1).Add(-time.Second)
|
||
return TimeToMilliseconds(start), TimeToMilliseconds(end)
|
||
}
|
||
|
||
// YesterdayMilliseconds 获取昨天的时间戳范围
|
||
func YesterdayMilliseconds() (int64, int64) {
|
||
now := time.Now()
|
||
yesterday := now.AddDate(0, 0, -1)
|
||
start := time.Date(yesterday.Year(), yesterday.Month(), yesterday.Day(), 0, 0, 0, 0, yesterday.Location())
|
||
end := start.AddDate(0, 0, 1).Add(-time.Second)
|
||
return TimeToMilliseconds(start), TimeToMilliseconds(end)
|
||
}
|
||
|
||
// Last7DaysMilliseconds 获取过去7天的时间戳范围
|
||
func Last7DaysMilliseconds() (int64, int64) {
|
||
now := time.Now()
|
||
end := time.Date(now.Year(), now.Month(), now.Day(), 23, 59, 59, 0, now.Location())
|
||
start := end.AddDate(0, 0, -7)
|
||
return TimeToMilliseconds(start), TimeToMilliseconds(end)
|
||
}
|