From ec48fad615b205a2443df9084d888686e740b7c4 Mon Sep 17 00:00:00 2001 From: mapleafgo Date: Tue, 29 Apr 2025 14:15:02 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=B9=E6=8A=95=E5=BD=B1=E6=9C=BA=E6=89=93?= =?UTF-8?q?=E5=BC=80=E7=8A=B6=E6=80=81=EF=BC=8C=E6=AF=8F=E5=8D=8A=E5=B0=8F?= =?UTF-8?q?=E6=97=B6=E8=BD=AE=E8=AF=A2=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/routes/standby/pjlink.go | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/internal/routes/standby/pjlink.go b/internal/routes/standby/pjlink.go index 767c89d..71e9c6c 100644 --- a/internal/routes/standby/pjlink.go +++ b/internal/routes/standby/pjlink.go @@ -7,6 +7,7 @@ import ( "game-driver/internal/schema" "game-driver/pkg/pjlink" "go.uber.org/zap" + "time" ) func PJLink(_ schema.WaitItemModel) func(c context.Context) error { @@ -21,14 +22,27 @@ func PJLink(_ schema.WaitItemModel) func(c context.Context) error { } zap.S().Infoln("打开投影仪结果:", resp) - <-c.Done() - - zap.S().Infoln("关闭待机投影仪") - resp, err = pjc.PowerOffSync() - if err != nil { - return fmt.Errorf("关闭投影仪异常: %w", err) + run := true + for run { + select { + case <-c.Done(): + zap.S().Infoln("关闭待机投影仪") + resp, err = pjc.PowerOffSync() + if err != nil { + return fmt.Errorf("关闭投影仪异常: %w", err) + } + zap.S().Infoln("关闭投影仪结果:", resp) + run = false + break + case <-time.After(time.Minute * 30): + zap.S().Infoln("轮询待机投影仪") + resp, err = pjc.PowerOnSync() + if err != nil { + return fmt.Errorf("轮询投影仪异常: %w", err) + } + zap.S().Infoln("轮询投影仪结果:", resp) + } } - zap.S().Infoln("关闭投影仪结果:", resp) return nil }