From 395397fedc57a39af19e2507ae6851172d0981e1 Mon Sep 17 00:00:00 2001 From: gyb Date: Thu, 12 Mar 2026 16:25:40 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=8F=90=E4=BA=A4=E6=A0=87=E6=B3=A8?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/AirlineMarkerServiceImpl.java | 44 ++++++++++++------- 1 file changed, 29 insertions(+), 15 deletions(-) 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 2ce9e16..91e95b2 100644 --- a/src/main/java/com/ruoyi/airline/service/impl/AirlineMarkerServiceImpl.java +++ b/src/main/java/com/ruoyi/airline/service/impl/AirlineMarkerServiceImpl.java @@ -32,17 +32,17 @@ public class AirlineMarkerServiceImpl implements IAirlineMarkerService { private IAirlineMarkerGroupInfoService iAirlineMarkerGroupInfoService; @Override - public int insertMarker(AirlineMarkerDTO marker) { - AirlineMarker model = AirlineMarkerServiceConvert.to(marker); + public int insertMarker(AirlineMarkerDTO dto) { + AirlineMarker model = AirlineMarkerServiceConvert.to(dto); int result = iAirlineMarkerDomain.insertMarker(model); // 处理分组关系 - if (result > 0 && marker.getGroupId() != null) { + if (result > 0 && dto.getGroupId() != null) { AirlineMarkerGroupInfoDTO groupInfo = new AirlineMarkerGroupInfoDTO(); - groupInfo.setGroupId(marker.getGroupId()); + groupInfo.setGroupId(dto.getGroupId()); groupInfo.setMarkerId(model.getId()); - groupInfo.setCreateBy(marker.getCreateBy()); - groupInfo.setUpdateBy(marker.getUpdateBy()); + groupInfo.setCreateBy(dto.getCreateBy()); + groupInfo.setUpdateBy(dto.getUpdateBy()); iAirlineMarkerGroupInfoService.insertMarkerGroupInfo(groupInfo); } @@ -50,20 +50,20 @@ public class AirlineMarkerServiceImpl implements IAirlineMarkerService { } @Override - public int updateMarker(AirlineMarkerDTO marker) { - AirlineMarker model = AirlineMarkerServiceConvert.to(marker); + public int updateMarker(AirlineMarkerDTO dto) { + AirlineMarker model = AirlineMarkerServiceConvert.to(dto); int result = iAirlineMarkerDomain.updateMarker(model); // 处理分组关系 - if (result > 0 && marker.getGroupId() != null) { + if (result > 0 && dto.getGroupId() != null) { // 先删除旧的关系 - iAirlineMarkerGroupInfoService.deleteMarkerGroupInfo(0L, null, marker.getId()); + iAirlineMarkerGroupInfoService.deleteMarkerGroupInfo(0L, null, dto.getId()); // 再创建新的关系 AirlineMarkerGroupInfoDTO groupInfo = new AirlineMarkerGroupInfoDTO(); - groupInfo.setGroupId(marker.getGroupId()); - groupInfo.setMarkerId(marker.getId()); - groupInfo.setCreateBy(marker.getUpdateBy()); - groupInfo.setUpdateBy(marker.getUpdateBy()); + groupInfo.setGroupId(dto.getGroupId()); + groupInfo.setMarkerId(dto.getId()); + groupInfo.setCreateBy(dto.getUpdateBy()); + groupInfo.setUpdateBy(dto.getUpdateBy()); iAirlineMarkerGroupInfoService.insertMarkerGroupInfo(groupInfo); } @@ -88,7 +88,21 @@ public class AirlineMarkerServiceImpl implements IAirlineMarkerService { @Override public List selectMarkerList(AirlineMarkerDTO dto) { AirlineMarker model = AirlineMarkerServiceConvert.to(dto); - return AirlineMarkerServiceConvert.fromList(iAirlineMarkerDomain.selectMarkerList(model)); + List markers = iAirlineMarkerDomain.selectMarkerList(model); + List dtos = AirlineMarkerServiceConvert.fromList(markers); + + // 为每个标注设置分组ID + for (AirlineMarkerDTO markerDto : dtos) { + // 查询分组关系 + AirlineMarkerGroupInfoDTO groupInfoDTO = new AirlineMarkerGroupInfoDTO(); + groupInfoDTO.setMarkerId(markerDto.getId()); + List groupInfos = iAirlineMarkerGroupInfoService.selectMarkerGroupInfoList(groupInfoDTO); + if (!groupInfos.isEmpty()) { + markerDto.setGroupId(groupInfos.get(0).getGroupId()); + } + } + + return dtos; } @Override