package com.ruoyi.airline.controller.convert; import com.ruoyi.airline.api.domain.AirlineDataVO; import com.ruoyi.airline.service.dto.AirlineDataDTO; import java.util.List; import java.util.stream.Collectors; /** * 航线数据Controller转换类 * 用于Controller VO和Service DTO之间的转换 * * @author ruoyi * @date 2026-01-17 */ public class AirlineDataControllerConvert { /** * 将Service DTO转换为Controller VO * * @param dto Service DTO * @return Controller VO */ public static AirlineDataVO toVO(AirlineDataDTO dto) { if (dto == null) { return null; } AirlineDataVO vo = new AirlineDataVO(); vo.setId(dto.getId()); vo.setFlightNumber(dto.getFlightNumber()); vo.setDepartureCity(dto.getDepartureCity()); vo.setArrivalCity(dto.getArrivalCity()); vo.setAirspeed(dto.getAirspeed()); vo.setVelocity(dto.getVelocity()); vo.setVspeed(dto.getVspeed()); vo.setHspeed(dto.getHspeed()); return vo; } /** * 将Controller VO转换为Service DTO * * @param vo Controller VO * @return Service DTO */ public static AirlineDataDTO toDTO(AirlineDataVO vo) { if (vo == null) { return null; } AirlineDataDTO dto = new AirlineDataDTO(); dto.setId(vo.getId()); dto.setFlightNumber(vo.getFlightNumber()); dto.setDepartureCity(vo.getDepartureCity()); dto.setArrivalCity(vo.getArrivalCity()); dto.setAirspeed(vo.getAirspeed()); dto.setVelocity(vo.getVelocity()); dto.setVspeed(vo.getVspeed()); dto.setHspeed(vo.getHspeed()); return dto; } /** * 将Service DTO列表转换为Controller VO列表 * * @param dtoList Service DTO列表 * @return Controller VO列表 */ public static List toVOList(List dtoList) { if (dtoList == null || dtoList.isEmpty()) { return null; } return dtoList.stream() .map(AirlineDataControllerConvert::toVO) .collect(Collectors.toList()); } /** * 将Controller VO列表转换为Service DTO列表 * * @param voList Controller VO列表 * @return Service DTO列表 */ public static List toDTOList(List voList) { if (voList == null || voList.isEmpty()) { return null; } return voList.stream() .map(AirlineDataControllerConvert::toDTO) .collect(Collectors.toList()); } }