format := "2006-01-02 15:04:05"
location, _ := time.ParseInLocation(format, "2022-02-20 11:30:00", time.Local)
date := location.AddDate(1, 0, 0)
date = date.AddDate(0, -1, 0)
dateTruncate := date.Truncate(1 * time.Hour)
dateRound := date.Round(1 * time.Hour)
fmt.Println(dateTruncate.Format(format))
fmt.Println(dateRound.Format(format))
seconds := date.Unix()
fmt.Println(seconds)
unix := time.Unix(seconds, 0)
fmt.Println(unix.Format(format))
unixMilli := date.UnixMilli()
fmt.Println(unixMilli)
milli := time.UnixMilli(unixMilli)
fmt.Println(milli.Format(format))