add:增加后台管理系统
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package org.nl.schedule.modular.vehicle.controller;
|
||||
|
||||
import jakarta.validation.constraints.NotBlank;
|
||||
import org.nl.logging.annotation.Log;
|
||||
import org.nl.schedule.modular.vehicle.service.VehicleService;
|
||||
import org.springframework.http.HttpStatus;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
@@ -29,4 +30,10 @@ public class VehicleController {
|
||||
public ResponseEntity<Object> getVehicleInfoByNumber(@PathVariable @NotBlank String vehicleNumber) {
|
||||
return new ResponseEntity<>(vehicleService.getVehicleInfoByNumber(vehicleNumber), HttpStatus.OK);
|
||||
}
|
||||
|
||||
@GetMapping("/getVehicleInfos")
|
||||
@Log("获取车辆信息列表")
|
||||
public ResponseEntity<Object> getVehicleInfos() {
|
||||
return new ResponseEntity<>(vehicleService.getVehicleInfos(),HttpStatus.OK);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -20,5 +20,9 @@ public interface VehicleService {
|
||||
*/
|
||||
VehicleInfoDto getVehicleInfoByNumber(String vehicleNumber);
|
||||
|
||||
|
||||
/**
|
||||
* 获取内存中的车辆信息
|
||||
* @return
|
||||
*/
|
||||
WebResponse getVehicleInfos();
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ import org.nl.api.task.api.TaskAPI;
|
||||
import org.nl.response.WebResponse;
|
||||
import org.nl.schedule.core.websocket.WebSocketVehicleInfoServer;
|
||||
import org.nl.schedule.modular.vehicle.dto.VehicleInfoDto;
|
||||
import org.nl.schedule.modular.vehicle.entity.Location;
|
||||
import org.nl.schedule.modular.vehicle.service.VehicleService;
|
||||
import org.nl.util.URLConstant;
|
||||
import org.springframework.scheduling.annotation.Scheduled;
|
||||
@@ -45,7 +46,7 @@ public class VehicleServiceImpl implements VehicleService {
|
||||
/**
|
||||
* 定时更新车辆信息(每秒执行)
|
||||
*/
|
||||
@Scheduled(fixedRate = 1000) // 每秒执行一次
|
||||
@Scheduled(fixedRate = 7000) // 每秒执行一次
|
||||
public void updateVehicleInfo() {
|
||||
try {
|
||||
List<VehicleInfoDto> vehicles = getAllVehicles();
|
||||
@@ -109,4 +110,39 @@ public class VehicleServiceImpl implements VehicleService {
|
||||
// 直接从缓存中获取
|
||||
return vehicleCache.get(vehicleNumber);
|
||||
}
|
||||
|
||||
@Override
|
||||
public WebResponse getVehicleInfos() {
|
||||
VehicleInfoDto vehicleInfoDto = new VehicleInfoDto();
|
||||
vehicleInfoDto.setVehicleId("1");
|
||||
vehicleInfoDto.setVehicleNumber("1");
|
||||
vehicleInfoDto.setIp("127.0.0.1");
|
||||
vehicleInfoDto.setBatteryLevel(100);
|
||||
vehicleInfoDto.setIceCapacity(50);
|
||||
vehicleInfoDto.setWaterCapacity(50);
|
||||
vehicleInfoDto.setSignalType("wifi");
|
||||
vehicleInfoDto.setSignalStrength(10);
|
||||
vehicleInfoDto.setError_code(0);
|
||||
vehicleInfoDto.setError_msg("");
|
||||
vehicleInfoDto.setError_info(new JSONObject());
|
||||
vehicleInfoDto.setCurrentLocation(new Location());
|
||||
vehicleInfoDto.setLastUpdated("2026-01-27 00:00:00");
|
||||
vehicleCache.put("1",vehicleInfoDto);
|
||||
VehicleInfoDto vehicleInfoDto2 = new VehicleInfoDto();
|
||||
vehicleInfoDto2.setVehicleId("2");
|
||||
vehicleInfoDto2.setVehicleNumber("2");
|
||||
vehicleInfoDto2.setIp("127.0.0.1");
|
||||
vehicleInfoDto2.setBatteryLevel(80);
|
||||
vehicleInfoDto2.setIceCapacity(60);
|
||||
vehicleInfoDto2.setWaterCapacity(60);
|
||||
vehicleInfoDto2.setSignalType("5G");
|
||||
vehicleInfoDto2.setSignalStrength(20);
|
||||
vehicleInfoDto2.setError_code(0);
|
||||
vehicleInfoDto2.setError_msg("");
|
||||
vehicleInfoDto2.setError_info(new JSONObject());
|
||||
vehicleInfoDto2.setCurrentLocation(new Location());
|
||||
vehicleInfoDto2.setLastUpdated("2026-01-27 12:00:00");
|
||||
vehicleCache.put("2",vehicleInfoDto2);
|
||||
return WebResponse.requestParamOk(vehicleCache);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user