diff --git a/src/main/java/com/ruoyi/airline/controller/AirlineMarkerController.java b/src/main/java/com/ruoyi/airline/controller/AirlineMarkerController.java index b0bf6b4..db45f87 100644 --- a/src/main/java/com/ruoyi/airline/controller/AirlineMarkerController.java +++ b/src/main/java/com/ruoyi/airline/controller/AirlineMarkerController.java @@ -91,4 +91,18 @@ public class AirlineMarkerController extends BaseController { dto.setUpdateBy(SecurityUtils.getUserId().toString()); return toAjax(iAirlineMarkerService.deleteMarker(dto)); } + + /** + * 按照分组ID查询标注列表 + * + * @param groupId 分组ID + * @return 标注列表 + */ + @GetMapping("/markerList/{groupId}") + @Operation(summary = "按照分组ID查询标注列表") + public AjaxResult selectMarkerListByGroupId(@PathVariable Long groupId) { + List dtos = iAirlineMarkerService.selectMarkerListByGroupId(groupId); + List result = AirlineMarkerControllerConvert.fromList(dtos); + return success(result); + } } diff --git a/src/main/java/com/ruoyi/airline/service/api/IAirlineMarkerService.java b/src/main/java/com/ruoyi/airline/service/api/IAirlineMarkerService.java index 7cfb515..6170a53 100644 --- a/src/main/java/com/ruoyi/airline/service/api/IAirlineMarkerService.java +++ b/src/main/java/com/ruoyi/airline/service/api/IAirlineMarkerService.java @@ -20,4 +20,6 @@ public interface IAirlineMarkerService { List selectMarkerList(AirlineMarkerDTO dto); AirlineMarkerDTO selectMarkerById(Long id); + + List selectMarkerListByGroupId(Long groupId); } diff --git a/src/main/java/com/ruoyi/airline/service/impl/AirlineMarkerServiceImpl.java b/src/main/java/com/ruoyi/airline/service/impl/AirlineMarkerServiceImpl.java index 75aa39c..2ce9e16 100644 --- a/src/main/java/com/ruoyi/airline/service/impl/AirlineMarkerServiceImpl.java +++ b/src/main/java/com/ruoyi/airline/service/impl/AirlineMarkerServiceImpl.java @@ -106,4 +106,24 @@ public class AirlineMarkerServiceImpl implements IAirlineMarkerService { return dto; } + + @Override + public List selectMarkerListByGroupId(Long groupId) { + // 通过分组ID查询标注ID列表 + List markerIds = iAirlineMarkerGroupInfoService.selectMarkerIdsByGroupId(groupId); + + // 如果没有标注,返回空列表 + if (markerIds == null || markerIds.isEmpty()) { + return java.util.Collections.emptyList(); + } + + // 通过标注ID列表查询标注详情 + List markers = iAirlineMarkerDomain.selectMarkerListByIds(markerIds); + List dtos = AirlineMarkerServiceConvert.fromList(markers); + + // 为每个标注设置分组ID + dtos.forEach(dto -> dto.setGroupId(groupId)); + + return dtos; + } }