Просмотр исходного кода

fix: schedule wechat shipping at beijing time

Codex 1 месяц назад
Родитель
Сommit
da81acd286

+ 4 - 2
go/gopath/src/fohow.com/apps/controllers/cron_controller/wechat_order_shipping.go

@@ -16,6 +16,7 @@ import (
 )
 
 var wechatOrderShippingLock sync.Mutex
+var wechatOrderShippingLocation = time.FixedZone("CST", 8*60*60)
 
 type WechatOrderShippingResult struct {
 	StartedAt           string `json:"started_at"`
@@ -51,8 +52,9 @@ func StartWechatOrderShippingScheduler() {
 }
 
 func nextWechatOrderShippingRun(now time.Time) time.Time {
-	next := time.Date(now.Year(), now.Month(), now.Day(), 1, 3, 0, 0, now.Location())
-	if !next.After(now) {
+	beijingNow := now.In(wechatOrderShippingLocation)
+	next := time.Date(beijingNow.Year(), beijingNow.Month(), beijingNow.Day(), 10, 3, 0, 0, wechatOrderShippingLocation)
+	if !next.After(beijingNow) {
 		next = next.AddDate(0, 0, 1)
 	}
 	return next