Files
data-engine/utils/time_utils.go

40 lines
1.3 KiB
Go
Raw Normal View History

2026-04-02 11:51:44 +08:00
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)
}