You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.8 KiB
51 lines
1.8 KiB
package com.iflytop.sgs.app.controller;
|
|
|
|
import com.iflytop.sgs.app.model.bo.status.device.DeviceState;
|
|
import com.iflytop.sgs.app.model.dto.SetSystemDatetimeDTO;
|
|
import com.iflytop.sgs.app.service.api.SystemConfigService;
|
|
import com.iflytop.sgs.app.service.device.DeviceStateService;
|
|
import com.iflytop.sgs.common.result.Result;
|
|
import io.swagger.v3.oas.annotations.Operation;
|
|
import io.swagger.v3.oas.annotations.tags.Tag;
|
|
import jakarta.validation.Valid;
|
|
import lombok.RequiredArgsConstructor;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
@Tag(name = "系统")
|
|
@RestController
|
|
@RequestMapping("/api/sys")
|
|
@RequiredArgsConstructor
|
|
@Slf4j
|
|
public class SystemController {
|
|
private final SystemConfigService systemConfigService;
|
|
private final DeviceStateService deviceStateService;
|
|
|
|
@Operation(summary = "是否启动虚拟模式")
|
|
@PostMapping("/virtual")
|
|
public Result<?> changeVirtualMode(Boolean mode) {
|
|
deviceStateService.getDeviceState().setVirtual(mode);
|
|
return Result.success();
|
|
}
|
|
|
|
@Operation(summary = "模拟向硬件写入完毕")
|
|
@PostMapping("/initComplete")
|
|
public Result<?> setInitComplete(Boolean initComplete) {
|
|
deviceStateService.getDeviceState().setInitComplete(initComplete);
|
|
return Result.success();
|
|
}
|
|
|
|
@Operation(summary = "系统状态")
|
|
@GetMapping("/device-status")
|
|
public Result<DeviceState> getDeviceStatus() {
|
|
return Result.success(deviceStateService.getDeviceState());
|
|
}
|
|
|
|
@Operation(summary = "设置系统时间")
|
|
@PostMapping("/datetime")
|
|
public Result<?> setDatetime(@Valid @RequestBody SetSystemDatetimeDTO setSystemDatetimeDTO) {
|
|
systemConfigService.setDatetime(setSystemDatetimeDTO.getDatetime());
|
|
return Result.success();
|
|
}
|
|
|
|
}
|