diff --git a/src/main/java/com/ruoyi/device/controller/DockController.java b/src/main/java/com/ruoyi/device/controller/DockController.java index 6f5a8d3..cd112fd 100644 --- a/src/main/java/com/ruoyi/device/controller/DockController.java +++ b/src/main/java/com/ruoyi/device/controller/DockController.java @@ -9,6 +9,8 @@ import com.ruoyi.device.service.api.IDockService; import com.ruoyi.device.service.api.IBufferDeviceService; import com.ruoyi.device.service.convert.BufferDeviceConvert; import com.ruoyi.device.service.dto.DockDetailDTO; +import com.ruoyi.device.service.dto.DockDTO; +import com.ruoyi.device.controller.convert.DockControllerConvert; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -41,8 +43,9 @@ public class DockController extends BaseController @GetMapping("/search") public R> searchDocks(@RequestParam(required = false) String dockStatus, @RequestParam(required = false) Long dockId) { - List dockList = dockService.searchDocks(dockStatus, dockId); - return R.ok(dockList); + List dtoList = dockService.searchDocks(dockStatus, dockId); + List voList = DockControllerConvert.toVOList(dtoList); + return R.ok(voList); } /** diff --git a/src/main/java/com/ruoyi/device/controller/GroupController.java b/src/main/java/com/ruoyi/device/controller/GroupController.java index f0308f3..d47e3d6 100644 --- a/src/main/java/com/ruoyi/device/controller/GroupController.java +++ b/src/main/java/com/ruoyi/device/controller/GroupController.java @@ -8,6 +8,8 @@ import com.ruoyi.device.api.domain.GroupCreateRequest; import com.ruoyi.device.api.domain.SwitchDockGroupRequest; import com.ruoyi.device.service.api.IGroupService; import com.ruoyi.device.service.dto.GroupDTO; +import com.ruoyi.device.service.dto.DockDTO; +import com.ruoyi.device.controller.convert.GroupControllerConvert; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -77,8 +79,9 @@ public class GroupController extends BaseController @GetMapping("/docks/{groupId}") public R> getDocksByGroupId(@PathVariable("groupId") Long groupId) { - List dockList = groupService.getDocksByGroupId(groupId); - return R.ok(dockList); + List dtoList = groupService.getDocksByGroupId(groupId); + List voList = GroupControllerConvert.toDockVOList(dtoList); + return R.ok(voList); } /** diff --git a/src/main/java/com/ruoyi/device/controller/convert/DockControllerConvert.java b/src/main/java/com/ruoyi/device/controller/convert/DockControllerConvert.java index 6226ddf..df1a3e2 100644 --- a/src/main/java/com/ruoyi/device/controller/convert/DockControllerConvert.java +++ b/src/main/java/com/ruoyi/device/controller/convert/DockControllerConvert.java @@ -1,5 +1,12 @@ package com.ruoyi.device.controller.convert; +import com.ruoyi.device.api.domain.DockVO; +import com.ruoyi.device.service.dto.DockDTO; +import org.springframework.beans.BeanUtils; + +import java.util.ArrayList; +import java.util.List; + /** * 机场Controller转换器 * @@ -8,4 +15,65 @@ package com.ruoyi.device.controller.convert; */ public class DockControllerConvert { + /** + * DTO 转 VO + */ + public static DockVO toVO(DockDTO dto) + { + if (dto == null) + { + return null; + } + DockVO vo = new DockVO(); + BeanUtils.copyProperties(dto, vo); + return vo; + } + + /** + * VO 转 DTO + */ + public static DockDTO toDTO(DockVO vo) + { + if (vo == null) + { + return null; + } + DockDTO dto = new DockDTO(); + BeanUtils.copyProperties(vo, dto); + return dto; + } + + /** + * DTO List 转 VO List + */ + public static List toVOList(List dtoList) + { + if (dtoList == null || dtoList.isEmpty()) + { + return new ArrayList<>(); + } + List voList = new ArrayList<>(); + for (DockDTO dto : dtoList) + { + voList.add(toVO(dto)); + } + return voList; + } + + /** + * VO List 转 DTO List + */ + public static List toDTOList(List voList) + { + if (voList == null || voList.isEmpty()) + { + return new ArrayList<>(); + } + List dtoList = new ArrayList<>(); + for (DockVO vo : voList) + { + dtoList.add(toDTO(vo)); + } + return dtoList; + } } diff --git a/src/main/java/com/ruoyi/device/controller/convert/GroupControllerConvert.java b/src/main/java/com/ruoyi/device/controller/convert/GroupControllerConvert.java index 168761f..a8a2f2f 100644 --- a/src/main/java/com/ruoyi/device/controller/convert/GroupControllerConvert.java +++ b/src/main/java/com/ruoyi/device/controller/convert/GroupControllerConvert.java @@ -1,5 +1,14 @@ package com.ruoyi.device.controller.convert; +import com.ruoyi.device.api.domain.DockVO; +import com.ruoyi.device.api.domain.GroupVO; +import com.ruoyi.device.service.dto.DockDTO; +import com.ruoyi.device.service.dto.GroupDTO; +import org.springframework.beans.BeanUtils; + +import java.util.ArrayList; +import java.util.List; + /** * 分组Controller转换器 * @@ -8,4 +17,110 @@ package com.ruoyi.device.controller.convert; */ public class GroupControllerConvert { + /** + * DTO 转 VO + */ + public static GroupVO toVO(GroupDTO dto) + { + if (dto == null) + { + return null; + } + GroupVO vo = new GroupVO(); + BeanUtils.copyProperties(dto, vo); + return vo; + } + + /** + * VO 转 DTO + */ + public static GroupDTO toDTO(GroupVO vo) + { + if (vo == null) + { + return null; + } + GroupDTO dto = new GroupDTO(); + BeanUtils.copyProperties(vo, dto); + return dto; + } + + /** + * DTO 转 VO + */ + public static DockVO toVO(DockDTO dto) + { + if (dto == null) + { + return null; + } + DockVO vo = new DockVO(); + BeanUtils.copyProperties(dto, vo); + return vo; + } + + /** + * VO 转 DTO + */ + public static DockDTO toDTO(DockVO vo) + { + if (vo == null) + { + return null; + } + DockDTO dto = new DockDTO(); + BeanUtils.copyProperties(vo, dto); + return dto; + } + + /** + * DTO List 转 VO List + */ + public static List toVOList(List dtoList) + { + if (dtoList == null || dtoList.isEmpty()) + { + return new ArrayList<>(); + } + List voList = new ArrayList<>(); + for (GroupDTO dto : dtoList) + { + voList.add(toVO(dto)); + } + return voList; + } + + /** + * Dock DTO List 转 Dock VO List + */ + public static List toDockVOList(List dtoList) + { + if (dtoList == null || dtoList.isEmpty()) + { + return new ArrayList<>(); + } + List voList = new ArrayList<>(); + for (DockDTO dto : dtoList) + { + voList.add(toVO(dto)); + } + return voList; + } + + /** + * VO List 转 DTO List + */ + public static List toDTOList(List voList) + { + if (voList == null || voList.isEmpty()) + { + return new ArrayList<>(); + } + List dtoList = new ArrayList<>(); + for (GroupVO vo : voList) + { + dtoList.add(toDTO(vo)); + } + return dtoList; + } } diff --git a/src/main/java/com/ruoyi/device/service/api/IDockService.java b/src/main/java/com/ruoyi/device/service/api/IDockService.java index 6e39f0a..81c56d7 100644 --- a/src/main/java/com/ruoyi/device/service/api/IDockService.java +++ b/src/main/java/com/ruoyi/device/service/api/IDockService.java @@ -1,7 +1,5 @@ package com.ruoyi.device.service.api; -import com.ruoyi.device.api.domain.DockDetailVO; -import com.ruoyi.device.api.domain.DockVO; import com.ruoyi.device.service.dto.DockDTO; import java.util.List; @@ -36,13 +34,5 @@ public interface IDockService * @param dockId 机场ID * @return 机场列表 */ - List searchDocks(String dockStatus, Long dockId); - - /** - * 查看机场详情 - * - * @param dockId 机场ID - * @return 机场详情 - */ - DockDetailVO getDockDetail(Long dockId); + List searchDocks(String dockStatus, Long dockId); } \ No newline at end of file diff --git a/src/main/java/com/ruoyi/device/service/api/IGroupService.java b/src/main/java/com/ruoyi/device/service/api/IGroupService.java index 7ca8c40..6fa26d1 100644 --- a/src/main/java/com/ruoyi/device/service/api/IGroupService.java +++ b/src/main/java/com/ruoyi/device/service/api/IGroupService.java @@ -1,8 +1,8 @@ package com.ruoyi.device.service.api; -import com.ruoyi.device.api.domain.DockVO; import com.ruoyi.device.api.domain.GroupVO; import com.ruoyi.device.service.dto.GroupDTO; +import com.ruoyi.device.service.dto.DockDTO; import java.util.List; /** @@ -90,7 +90,7 @@ public interface IGroupService * @param groupId 分组ID * @return 机场列表 */ - List getDocksByGroupId(Long groupId); + List getDocksByGroupId(Long groupId); /** * 查看所有分组 diff --git a/src/main/java/com/ruoyi/device/service/convert/DockServiceConvert.java b/src/main/java/com/ruoyi/device/service/convert/DockServiceConvert.java index 7657aca..897f63c 100644 --- a/src/main/java/com/ruoyi/device/service/convert/DockServiceConvert.java +++ b/src/main/java/com/ruoyi/device/service/convert/DockServiceConvert.java @@ -1,6 +1,5 @@ package com.ruoyi.device.service.convert; -import com.ruoyi.device.api.domain.DockVO; import com.ruoyi.device.domain.model.Dock; import com.ruoyi.device.service.dto.DockDTO; import org.springframework.beans.BeanUtils; @@ -10,7 +9,7 @@ import java.util.stream.Collectors; /** * 机场Service层转换器 - * Service DTO ↔ Domain Model ↔ API VO + * Service DTO ↔ Domain Model * * @author ruoyi * @date 2026-01-16 @@ -45,34 +44,6 @@ public class DockServiceConvert return model; } - /** - * Model 转 VO - */ - public static DockVO toVO(Dock model) - { - if (model == null) - { - return null; - } - DockVO vo = new DockVO(); - BeanUtils.copyProperties(model, vo); - return vo; - } - - /** - * DTO 转 VO - */ - public static DockVO toVO(DockDTO dto) - { - if (dto == null) - { - return null; - } - DockVO vo = new DockVO(); - BeanUtils.copyProperties(dto, vo); - return vo; - } - /** * Model List 转 DTO List */ diff --git a/src/main/java/com/ruoyi/device/service/impl/DockServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/DockServiceImpl.java index 8750f05..f79e8c1 100644 --- a/src/main/java/com/ruoyi/device/service/impl/DockServiceImpl.java +++ b/src/main/java/com/ruoyi/device/service/impl/DockServiceImpl.java @@ -1,7 +1,5 @@ package com.ruoyi.device.service.impl; -import com.ruoyi.device.api.domain.DockDetailVO; -import com.ruoyi.device.api.domain.DockVO; import com.ruoyi.device.domain.api.IDockDomain; import com.ruoyi.device.domain.model.Dock; import com.ruoyi.device.service.api.IDockService; @@ -40,14 +38,11 @@ public class DockServiceImpl implements IDockService } @Override - public List searchDocks(String dockStatus, Long dockId) + public List searchDocks(String dockStatus, Long dockId) { - return null; - } - - @Override - public DockDetailVO getDockDetail(Long dockId) - { - return null; + DockDTO query = new DockDTO(); + query.setDockId(dockId); + List modelList = dockDomain.selectDockList(DockServiceConvert.toModel(query)); + return DockServiceConvert.toDTOList(modelList); } } \ No newline at end of file diff --git a/src/main/java/com/ruoyi/device/service/impl/GroupServiceImpl.java b/src/main/java/com/ruoyi/device/service/impl/GroupServiceImpl.java index 8b991a5..7d9cac2 100644 --- a/src/main/java/com/ruoyi/device/service/impl/GroupServiceImpl.java +++ b/src/main/java/com/ruoyi/device/service/impl/GroupServiceImpl.java @@ -1,5 +1,6 @@ package com.ruoyi.device.service.impl; +import com.alibaba.fastjson.JSON; import com.ruoyi.device.api.domain.DockVO; import com.ruoyi.device.domain.api.IGroupDomain; import com.ruoyi.device.domain.api.IDockGroupDomain; @@ -13,6 +14,8 @@ import com.ruoyi.device.service.dto.GroupDTO; import com.ruoyi.device.service.dto.DockDTO; import com.ruoyi.device.service.convert.DockServiceConvert; import com.ruoyi.device.api.domain.DockDetailVO; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -29,6 +32,7 @@ import java.util.stream.Collectors; @Service public class GroupServiceImpl implements IGroupService { + private static final Logger log = LoggerFactory.getLogger(GroupServiceImpl.class); @Autowired private IGroupDomain groupDomain; @@ -113,12 +117,12 @@ public class GroupServiceImpl implements IGroupService } @Override - public List getDocksByGroupId(Long groupId) + public List getDocksByGroupId(Long groupId) { DockGroup dockGroupQuery = new DockGroup(); dockGroupQuery.setGroupId(groupId); List dockGroupList = dockGroupDomain.selectDockGroupList(dockGroupQuery); - + log.info("selectDockGroupList: {}", JSON.toJSONString(dockGroupList)); if (dockGroupList == null || dockGroupList.isEmpty()) { return List.of(); @@ -127,7 +131,7 @@ public class GroupServiceImpl implements IGroupService return dockGroupList.stream() .map(DockGroup::getDockId) .map(dockDomain::selectDockByDockId) - .map(DockServiceConvert::toVO) + .map(DockServiceConvert::toDTO) .collect(Collectors.toList()); }