修复拉卡拉支付时间偏差
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
package timeutil
|
||||
|
||||
import (
|
||||
"sync"
|
||||
"time"
|
||||
)
|
||||
|
||||
var (
|
||||
shanghaiOnce sync.Once
|
||||
shanghaiLoc *time.Location
|
||||
)
|
||||
|
||||
// ShanghaiLocation 返回业务统一使用的北京时间时区。
|
||||
func ShanghaiLocation() *time.Location {
|
||||
shanghaiOnce.Do(func() {
|
||||
loc, err := time.LoadLocation("Asia/Shanghai")
|
||||
if err != nil {
|
||||
loc = time.FixedZone("Asia/Shanghai", 8*60*60)
|
||||
}
|
||||
shanghaiLoc = loc
|
||||
})
|
||||
return shanghaiLoc
|
||||
}
|
||||
|
||||
// ShanghaiNow 返回当前北京时间,避免容器默认 UTC 影响无时区字符串。
|
||||
func ShanghaiNow() time.Time {
|
||||
return time.Now().In(ShanghaiLocation())
|
||||
}
|
||||
Reference in New Issue
Block a user