a-tuoheng-airline/src/main/java/com/ruoyi/airline/controller/convert/AirlineAreaGroupDetailContr...

82 lines
2.7 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.ruoyi.airline.controller.convert;
import com.ruoyi.airline.api.domain.AirlineAreaGroupDetailVO;
import com.ruoyi.airline.service.dto.AirlineAreaDTO;
import com.ruoyi.airline.service.dto.AirlineAreaGroupDTO;
import com.ruoyi.common.core.utils.BaseConvert;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.util.ArrayList;
import java.util.List;
/**
* 空域分组详情Controller转换类
* 用于Service DTO和API VO之间的转换
*
* @author ruoyi
* @date 2026-02-25
*/
public class AirlineAreaGroupDetailControllerConvert extends BaseConvert<AirlineAreaGroupDTO, AirlineAreaGroupDetailVO>
{
private static final Logger log = LoggerFactory.getLogger(AirlineAreaGroupDetailControllerConvert.class);
private static final AirlineAreaGroupDetailControllerConvert INSTANCE = new AirlineAreaGroupDetailControllerConvert();
private AirlineAreaGroupDetailControllerConvert() {
super(AirlineAreaGroupDTO.class, AirlineAreaGroupDetailVO.class);
}
public static AirlineAreaGroupDetailVO from(AirlineAreaGroupDTO dto)
{
return INSTANCE.innerFrom(dto);
}
public static AirlineAreaGroupDTO to(AirlineAreaGroupDetailVO vo)
{
return INSTANCE.innerTo(vo);
}
public static List<AirlineAreaGroupDetailVO> fromList(List<AirlineAreaGroupDTO> dtoList)
{
return INSTANCE.innerFromList(dtoList);
}
public static List<AirlineAreaGroupDTO> toList(List<AirlineAreaGroupDetailVO> voList)
{
return INSTANCE.innerToList(voList);
}
@Override
protected AirlineAreaGroupDetailVO innerFrom(AirlineAreaGroupDTO dto) {
if (dto == null) {
return null;
}
AirlineAreaGroupDetailVO result = new AirlineAreaGroupDetailVO();
result.setGroupId(dto.getGroupId());
if (dto.getGroupInfos() != null && !dto.getGroupInfos().isEmpty()) {
List<com.ruoyi.airline.api.domain.AirlineAreaVO> airspaceList = new ArrayList<>();
for (AirlineAreaDTO area : dto.getGroupInfos()) {
// 使用 AirlineAreaControllerConvert 进行转换
com.ruoyi.airline.api.domain.AirlineAreaVO vo = AirlineAreaControllerConvert.from(area);
airspaceList.add(vo);
}
result.setAirspaceList(airspaceList);
}
return result;
}
@Override
protected AirlineAreaGroupDTO innerTo(AirlineAreaGroupDetailVO vo) {
if (vo == null) {
return null;
}
AirlineAreaGroupDTO dto = new AirlineAreaGroupDTO();
dto.setGroupId(vo.getGroupId());
// 这里不需要转换 airspaceList 到 groupInfos因为通常是从服务层到控制层的转换
return dto;
}
}