Browse Source

initDeviceState时应该使用ObjectProvider初始化

master
白凤吉 2 months ago
parent
commit
c31c768d2b
  1. 7
      src/main/java/com/iflytop/sgs/app/service/device/DeviceInitService.java

7
src/main/java/com/iflytop/sgs/app/service/device/DeviceInitService.java

@ -30,12 +30,13 @@ import java.util.concurrent.CompletableFuture;
@RequiredArgsConstructor
public class DeviceInitService {
private final DeviceStateService deviceStateService;
private final ObjectProvider<HeatModuleState> heatModuleStateProvider;
private final ContainerService containerService;
private final DeviceParamConfigService deviceParamConfigService;
private final CanBusService canBusService;
private final DeviceCommandService deviceCommandService;
private final DeviceSensorService deviceSensorService;
private final ObjectProvider<HeatModuleState> heatModuleStateProvider;
private final ObjectProvider<SolutionContainerState> solutionContainerStateProvider;
@PostConstruct
public void init() {
@ -117,9 +118,9 @@ public class DeviceInitService {
List<SolutionContainerState> solutionBucket = deviceState.getSolutionModule().getSolutionContainer();
for (Container container : containerList) {
if (container.getType() == 0) {
solutionBucket.add(new SolutionContainerState(container.getId(), ContainerCode.valueOf(container.getCode()), ContainerType.solution));
solutionBucket.add(solutionContainerStateProvider.getObject(container.getId(), ContainerCode.valueOf(container.getCode()), ContainerType.solution));
} else {
solutionBucket.add(new SolutionContainerState(container.getId(), ContainerCode.valueOf(container.getCode()), ContainerType.waste));
solutionBucket.add(solutionContainerStateProvider.getObject(container.getId(), ContainerCode.valueOf(container.getCode()), ContainerType.waste));
}
}

Loading…
Cancel
Save