2024-05-01 20:03:20 +08:00
|
|
|
|
package tools
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"time"
|
|
|
|
|
)
|
|
|
|
|
|
2024-05-02 12:38:42 +08:00
|
|
|
|
// 计算时间差值
|
|
|
|
|
|
|
|
|
|
func RemainingTimeUntilNextFriday17() time.Duration {
|
|
|
|
|
// 获取当前时间
|
|
|
|
|
now := time.Now()
|
|
|
|
|
|
|
|
|
|
// 计算下一个周五的时间
|
2024-05-03 00:08:24 +08:00
|
|
|
|
nextFriday := now.AddDate(0, 0, (int(time.Friday)-int(now.Weekday())+7)%7)
|
|
|
|
|
|
|
|
|
|
// 如果今天是周五,则直接返回距离今天17点的时间
|
|
|
|
|
if now.Weekday() == time.Friday {
|
|
|
|
|
today17 := time.Date(now.Year(), now.Month(), now.Day(), 17, 0, 0, 0, now.Location())
|
|
|
|
|
return today17.Sub(now)
|
|
|
|
|
}
|
2024-05-02 12:38:42 +08:00
|
|
|
|
|
|
|
|
|
// 构造下一个周五 17 点的时间
|
|
|
|
|
nextFriday17 := time.Date(nextFriday.Year(), nextFriday.Month(), nextFriday.Day(), 17, 0, 0, 0, nextFriday.Location())
|
|
|
|
|
|
|
|
|
|
// 计算时间差
|
|
|
|
|
duration := nextFriday17.Sub(now)
|
|
|
|
|
|
|
|
|
|
return duration
|
|
|
|
|
}
|