3 changed files with 53 additions and 15 deletions
-
4src/main/java/com/iflytop/gd/app/core/device/DeviceState.java
-
15src/main/java/com/iflytop/gd/app/service/DeviceInitService.java
-
47src/main/java/com/iflytop/gd/app/service/scheduled/FetchTemperatureScheduledTask.java
@ -1,13 +1,56 @@ |
|||||
package com.iflytop.gd.app.service.scheduled; |
package com.iflytop.gd.app.service.scheduled; |
||||
|
|
||||
|
import com.iflytop.gd.app.core.device.HeatModuleState; |
||||
|
import com.iflytop.gd.app.service.DeviceStateService; |
||||
|
import com.iflytop.gd.common.enums.HeatModuleCode; |
||||
|
import com.iflytop.gd.hardware.service.GDDeviceStatusService; |
||||
|
import com.iflytop.gd.hardware.type.driver.HeaterRodSlavedId; |
||||
|
import lombok.RequiredArgsConstructor; |
||||
|
import lombok.extern.slf4j.Slf4j; |
||||
import org.springframework.scheduling.annotation.Scheduled; |
import org.springframework.scheduling.annotation.Scheduled; |
||||
import org.springframework.stereotype.Service; |
import org.springframework.stereotype.Service; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
@Slf4j |
||||
@Service |
@Service |
||||
|
@RequiredArgsConstructor |
||||
public class FetchTemperatureScheduledTask { |
public class FetchTemperatureScheduledTask { |
||||
|
private final GDDeviceStatusService gdDeviceStatusService; |
||||
|
private final DeviceStateService deviceStateService; |
||||
|
|
||||
@Scheduled(fixedRate = 30000) |
@Scheduled(fixedRate = 30000) |
||||
public void fetchTemperature() { |
public void fetchTemperature() { |
||||
System.out.println("Fetching temperature task is running: " + System.currentTimeMillis()); |
|
||||
// 任务逻辑 |
|
||||
|
try { |
||||
|
if(!deviceStateService.getDeviceState().isVirtual()){ |
||||
|
Double heatModule01Temperature = gdDeviceStatusService.getHeaterRodTemperature(HeaterRodSlavedId.HEATER_ROD1_ID); |
||||
|
deviceStateService.setHeatModuleStateTemperature(HeatModuleCode.heat_module_01, heatModule01Temperature); |
||||
|
|
||||
|
Double heatModule02Temperature = gdDeviceStatusService.getHeaterRodTemperature(HeaterRodSlavedId.HEATER_ROD2_ID); |
||||
|
deviceStateService.setHeatModuleStateTemperature(HeatModuleCode.heat_module_02, heatModule02Temperature); |
||||
|
|
||||
|
Double heatModule03Temperature = gdDeviceStatusService.getHeaterRodTemperature(HeaterRodSlavedId.HEATER_ROD3_ID); |
||||
|
deviceStateService.setHeatModuleStateTemperature(HeatModuleCode.heat_module_03, heatModule03Temperature); |
||||
|
|
||||
|
Double heatModule04Temperature = gdDeviceStatusService.getHeaterRodTemperature(HeaterRodSlavedId.HEATER_ROD4_ID); |
||||
|
deviceStateService.setHeatModuleStateTemperature(HeatModuleCode.heat_module_04, heatModule04Temperature); |
||||
|
|
||||
|
Double heatModule05Temperature = gdDeviceStatusService.getHeaterRodTemperature(HeaterRodSlavedId.HEATER_ROD5_ID); |
||||
|
deviceStateService.setHeatModuleStateTemperature(HeatModuleCode.heat_module_05, heatModule05Temperature); |
||||
|
|
||||
|
Double heatModule06Temperature = gdDeviceStatusService.getHeaterRodTemperature(HeaterRodSlavedId.HEATER_ROD6_ID); |
||||
|
deviceStateService.setHeatModuleStateTemperature(HeatModuleCode.heat_module_06, heatModule06Temperature); |
||||
|
}else{ |
||||
|
List<HeatModuleState> heatModuleStateList = deviceStateService.getDeviceState().getHeatModule(); |
||||
|
for (HeatModuleState heatModuleState : heatModuleStateList) { |
||||
|
if(heatModuleState.isHeating()){ |
||||
|
deviceStateService.setHeatModuleStateTemperature(heatModuleState.getModuleCode(), 999); |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} catch (Exception e) { |
||||
|
log.error("定时采集加热棒温度错误", e); |
||||
|
} |
||||
|
|
||||
} |
} |
||||
} |
} |
Write
Preview
Loading…
Cancel
Save
Reference in new issue