diff --git a/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/controller/CarController.java b/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/controller/CarController.java index 5bcdeda..ea328b1 100644 --- a/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/controller/CarController.java +++ b/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/controller/CarController.java @@ -101,4 +101,15 @@ public class CarController { public Result listRealTime(@RequestParam String vin){ return carService.listRealTime(vin); } + + /** + * 删除实时轨迹事件 + * @param vin + * @return + */ + @PostMapping("/removeRealTime") + public Result removeRealTime(@RequestParam String vin){ + return carService.removeRealTime(vin); + } + } diff --git a/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/controller/HistoricalTrackController.java b/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/controller/HistoricalTrackController.java index 20af649..29d792a 100644 --- a/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/controller/HistoricalTrackController.java +++ b/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/controller/HistoricalTrackController.java @@ -54,4 +54,5 @@ public class HistoricalTrackController { public Result> carRecord(@RequestBody HistoryReq historyReq){ return Result.success(historicalTrackService.carRecord(historyReq)); } + } diff --git a/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/service/CarService.java b/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/service/CarService.java index 6d8491e..e75611b 100644 --- a/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/service/CarService.java +++ b/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/service/CarService.java @@ -69,4 +69,11 @@ public interface CarService { * @return */ Result listRealTime(String vin); + + /** + * 删除实时轨迹事件 + * @param vin + * @return + */ + Result removeRealTime(String vin); } diff --git a/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/service/impl/CarServiceImpl.java b/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/service/impl/CarServiceImpl.java index 35fa7ef..3bcb75b 100644 --- a/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/service/impl/CarServiceImpl.java +++ b/vehicle-history-server/src/main/java/com/dragon/vehicle/history/server/service/impl/CarServiceImpl.java @@ -144,7 +144,6 @@ public class CarServiceImpl implements CarService { @Override public Result realTime(String vin) { List cacheList = redisService.getCacheList("event_"+vin);//根据vin查询出车辆的事件列表 - redisService.deleteObject("event_"+vin); cacheList.add("runtimeTraceEvent");//添加实时轨迹事件 redisService.setCacheList("event_"+vin,cacheList);//将事件列表存入redis return Result.success("添加事件成功!"); @@ -157,20 +156,19 @@ public class CarServiceImpl implements CarService { */ @Override public Result listRealTime(String vin) { - // 获取当前时间戳 - long currentTimestamp = System.currentTimeMillis(); - - // 设置score的范围为负无穷到当前时间戳,获取最新的数据 - Set> vehicleData = redisTemplate.opsForZSet().reverseRangeByScoreWithScores("runtimeTraceEvent:"+vin, Double.NEGATIVE_INFINITY, currentTimestamp, 0, 1); - - // 检查是否有数据 - if (vehicleData != null && !vehicleData.isEmpty()) { - // 获取最新的数据 - ZSetOperations.TypedTuple latestData = vehicleData.iterator().next(); - VehicleData latestVehicleData = VehicleData.getBuild(Objects.requireNonNull(latestData.getValue())); - - return Result.success(latestVehicleData); - } return null; } + + /** + * 删除实时轨迹事件 + * @param vin + * @return + */ + @Override + public Result removeRealTime(String vin) { + List cacheList = redisService.getCacheList("event_" + vin); + cacheList.remove("runtimeTraceEvent"); + redisService.setCacheList("event_"+vin,cacheList); + return Result.success("移除事件成功!"); + } }