From a0644b93a1fdab39cbce13dc9aeb673edc700b4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E6=A2=A6=E8=BF=9C?= <1063331231@qq.com> Date: Thu, 26 Jun 2025 13:58:40 +0800 Subject: [PATCH] =?UTF-8?q?1=E3=80=81=E5=88=9D=E5=A7=8B=E5=8C=96=E5=85=B3?= =?UTF-8?q?=E9=97=ADIO=E8=AE=BE=E5=A4=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sgs/app/service/device/DeviceInitService.java | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/iflytop/sgs/app/service/device/DeviceInitService.java b/src/main/java/com/iflytop/sgs/app/service/device/DeviceInitService.java index d50dcf6..d9f193b 100644 --- a/src/main/java/com/iflytop/sgs/app/service/device/DeviceInitService.java +++ b/src/main/java/com/iflytop/sgs/app/service/device/DeviceInitService.java @@ -8,6 +8,7 @@ import com.iflytop.sgs.app.model.entity.Container; import com.iflytop.sgs.app.model.entity.DeviceParamConfig; import com.iflytop.sgs.app.service.api.ContainerService; import com.iflytop.sgs.app.service.api.DeviceParamConfigService; +import com.iflytop.sgs.app.service.device.module.HeatModuleService; import com.iflytop.sgs.common.cmd.DeviceCommandBundle; import com.iflytop.sgs.common.cmd.DeviceCommandGenerator; import com.iflytop.sgs.common.enums.ContainerCode; @@ -25,6 +26,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.ObjectProvider; import org.springframework.stereotype.Service; +import java.util.Arrays; import java.util.List; import java.util.concurrent.CompletableFuture; @@ -42,6 +44,7 @@ public class DeviceInitService { private final ObjectProvider solutionContainerStateProvider; private final DeviceLightSoundService deviceLightSoundService; private final AppEventBusService eventBus; + private final HeatModuleService heatModuleService; @PostConstruct public void init() throws InterruptedException { @@ -50,7 +53,7 @@ public class DeviceInitService { } private void onAppEvent(AppEvent event) { - if(event instanceof A8kCanBusOnConnectEvent){ + if (event instanceof A8kCanBusOnConnectEvent) { new Thread(() -> { try { CompletableFuture.runAsync(() -> { @@ -64,6 +67,7 @@ public class DeviceInitService { canBusService.initOvertime(); initEnable(); initSensorState(); + closeIODevice(); CompletableFuture.runAsync(() -> { try { deviceLightSoundService.openColor(CmdColor.green); @@ -79,6 +83,20 @@ public class DeviceInitService { } } + public void closeIODevice() { + CompletableFuture.runAsync(() -> { + HeatModuleCode[] heatModuleCodes = HeatModuleCode.values(); + Arrays.stream(heatModuleCodes).toList().forEach(heatModuleCode -> {//关闭所有的加热和风扇 + try { + heatModuleService.fanClose(heatModuleCode);//关闭风扇 + heatModuleService.heatRodClose(heatModuleCode);//关闭加热棒 + } catch (Exception e) { + log.error("自检关闭风扇和加热棒{},{}", heatModuleCode, e.getMessage()); + } + }); + }); + } + public void initSensorState() throws Exception { deviceSensorService.collectSensorState(); }