diff --git a/pom.xml b/pom.xml index 19f2eb7..6fb942c 100644 --- a/pom.xml +++ b/pom.xml @@ -109,6 +109,7 @@ org.springframework.boot spring-boot-starter-actuator + org.springframework.boot spring-boot-starter-thymeleaf diff --git a/src/main/java/a8k/BoditechA800Application.java b/src/main/java/a8k/BoditechA800Application.java index a3c19d9..8ed0f0c 100644 --- a/src/main/java/a8k/BoditechA800Application.java +++ b/src/main/java/a8k/BoditechA800Application.java @@ -1,33 +1,29 @@ package a8k; -import org.springframework.core.env.Environment; import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.ApplicationListener; -import org.springframework.context.annotation.ComponentScan; -import org.springframework.context.annotation.EnableAspectJAutoProxy; import org.springframework.context.event.ContextRefreshedEvent; -import org.springframework.stereotype.Component; +import org.springframework.core.env.Environment; -@SpringBootApplication @Slf4j +@SpringBootApplication public class BoditechA800Application implements ApplicationListener { - @Resource - private Environment env; + @Resource + private Environment env; - public static void main(String[] args) { - SpringApplication.run(BoditechA800Application.class, args); + public static void main(String[] args) { + SpringApplication.run(BoditechA800Application.class, args); - } + } - @Override public void onApplicationEvent(ContextRefreshedEvent event) { + @Override + public void onApplicationEvent(ContextRefreshedEvent event) { // if (null == event.getApplicationContext().getParent()) { // log.info("Springboot加载完成"); // try { @@ -37,5 +33,5 @@ public class BoditechA800Application implements ApplicationListener onIDLE(); - case WORKING -> onWorking(); - case PAUSE -> onPause(); - } - - onPostProcessing(); - OS.forceSleep(500); + try{ + var state = deviceWorkStateMgrService.getDeviceWorkState(); + if (state.fatalErrorFlag) { + OS.forceSleep(500); + continue; + } + + switch (state.workState) { + case IDLE -> onIDLE(); + case WORKING -> onWorking(); + case PAUSE -> onPause(); + } + + onPostProcessing(); + OS.forceSleep(500); + } catch (Exception e) { + log.error("workFn error {}", e.getMessage(), e); + } } } diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 92d25d1..4318976 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -7,6 +7,7 @@ device.runmode: "RealMode" device.enableCanBus: true iflytophald: + # ip: 192.168.8.10 # ip: 192.168.8.10 ip: 127.0.0.1 cmdch.port: 19004 @@ -40,3 +41,4 @@ springdoc: enabled: true # 开启swagger界面,依赖OpenApi,需要OpenApi同时开启 path: /doc/apitest.html # 自定义路径,默认为"/swagger-ui/index.html operationsSorter: method # 接口按照方法排序 +