feat:0666账号密码自动登录刷新Token

This commit is contained in:
2026-11-03 12:13:39 +08:00
parent 4dbec33dbd
commit f69cdc6d8e
12 changed files with 741 additions and 11 deletions
+10 -3
View File
@@ -124,7 +124,7 @@ func main() {
// 这里传的只是初始/兜底地址,真正的上游地址以 rock_configs.base_url 为准,
// 因此紧接着要同步一次,否则后台改过的地址重启后会失效。
rockClient := service.NewRockClient(model.RockDefaultBaseURL)
rockSvc := service.NewRockService(db, rockClient)
rockSvc := service.NewRockService(db, rockClient, codec)
if err := rockSvc.ApplyConfigToClient(context.Background()); err != nil {
applog.Warnf("读取 Rock 平台配置失败,暂用默认上游地址 %s: %v", model.RockDefaultBaseURL, err)
}
@@ -168,12 +168,19 @@ func main() {
time.Duration(cfg.FulfillmentTimeoutScanIntervalSeconds)*time.Second,
)
// 定时巡检 Rock 库存低水位与自动补货(每5分钟)
// 启动后立即检查一次 Token,之后每 5 分钟巡检 Token 有效性 + 库存低水位。
go func() {
run := func() {
if err := rockSvc.EnsureTokenValid(context.Background()); err != nil {
log.Printf("[Rock] Token 检查失败: %v", err)
}
rockSvc.CheckStockAndAutoPurchase(context.Background())
}
run()
ticker := time.NewTicker(5 * time.Minute)
defer ticker.Stop()
for range ticker.C {
rockSvc.CheckStockAndAutoPurchase(context.Background())
run()
}
}()