33 lines
790 B
Go
33 lines
790 B
Go
package vietguys
|
|
|
|
import "time"
|
|
|
|
//
|
|
// NOTE: due to unique timezone in server's code, all using time will be convert to HCM timezone (UTC +7)
|
|
// All functions generate time, must be call util functions here
|
|
// WARNING: don't accept call time.Now() directly
|
|
//
|
|
|
|
const timezoneHCM = "Asia/Ho_Chi_Minh"
|
|
|
|
// getHCMLocation ...
|
|
func getHCMLocation() *time.Location {
|
|
l, _ := time.LoadLocation(timezoneHCM)
|
|
return l
|
|
}
|
|
|
|
// Now ...
|
|
func now() time.Time {
|
|
return time.Now().In(getHCMLocation())
|
|
}
|
|
|
|
// TimeBeforeNowInMin ...
|
|
func timeBeforeNowInMin(min int) time.Time {
|
|
return time.Now().Add(time.Minute * time.Duration(min) * -1).In(getHCMLocation())
|
|
}
|
|
|
|
// StartOfDate ...
|
|
func startOfDate(t time.Time) time.Time {
|
|
return time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, getHCMLocation())
|
|
}
|