diff --git a/web/src/main/java/com/leaper/web/controller/RealTimeController.java b/web/src/main/java/com/leaper/web/controller/RealTimeController.java index b95e2f3..7b40c62 100644 --- a/web/src/main/java/com/leaper/web/controller/RealTimeController.java +++ b/web/src/main/java/com/leaper/web/controller/RealTimeController.java @@ -48,6 +48,13 @@ public class RealTimeController { return Result.success(realTimeService.allAreas()); } + @GetMapping("/allCamerasByArea") + @ApiOperation(value = "球机按库区分组") + //@SessionHandler + public Result> allCamerasByArea(String area) { + return Result.success(realTimeService.getAllCamerasByArea(area)); + } + @GetMapping("/wallStyle") @ApiOperation(value = "视频墙样式") //@SessionHandler diff --git a/web/src/main/java/com/leaper/web/service/RealTimeService.java b/web/src/main/java/com/leaper/web/service/RealTimeService.java index 675d945..7a4e9a8 100644 --- a/web/src/main/java/com/leaper/web/service/RealTimeService.java +++ b/web/src/main/java/com/leaper/web/service/RealTimeService.java @@ -1,5 +1,6 @@ package com.leaper.web.service; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.leaper.web.config.ConfigProperties; import com.leaper.web.entity.Camera; import com.leaper.web.entity.Street; @@ -8,6 +9,7 @@ import com.leaper.web.mapper.StreetMapper; import com.leaper.web.pojo.realTime.RealTime; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.util.StringUtils; import javax.annotation.Resource; import java.util.*; @@ -67,5 +69,24 @@ public class RealTimeService { return streets.stream().collect(Collectors.groupingBy(Street::getArea)).keySet(); } + public List getAllCamerasByArea(String area){ + List cameras = new ArrayList<>(); + if(StringUtils.isEmpty(area)){ + return cameras; + } + List streets = streetMapper.selectList(new QueryWrapper().eq("`area`",area)); + List cameraIds = new ArrayList<>(); + streets.forEach(street -> { + if(street.getCamera1Id() != null){ + cameraIds.add(street.getCamera1Id()); + } + if(street.getCamera2Id() != null){ + cameraIds.add(street.getCamera2Id()); + } + }); + cameras = cameraMapper.selectBatchIds(cameraIds); + return cameras; + } + }