Search in sources :

Example 1 with ProjectConfigDTO

use of io.choerodon.agile.infra.dto.ProjectConfigDTO in project agile-service by open-hand.

the class ConvertUtils method convertStateMachineSchemeToVO.

public static StateMachineSchemeVO convertStateMachineSchemeToVO(final StateMachineSchemeDTO scheme, final Map<Long, ProjectVO> projectMap) {
    ModelMapper modelMapper = new ModelMapper();
    StateMachineSchemeVO schemeVO = modelMapper.map(scheme, StateMachineSchemeVO.class);
    List<StatusMachineSchemeConfigDTO> schemeConfigs = scheme.getSchemeConfigs();
    if (null != schemeConfigs && !schemeConfigs.isEmpty()) {
        List<StatusMachineSchemeConfigVO> schemeConfigVOS = modelMapper.map(schemeConfigs, new TypeToken<List<StatusMachineSchemeConfigVO>>() {
        }.getType());
        schemeVO.setConfigVOS(schemeConfigVOS);
    }
    List<ProjectConfigDTO> projectConfigs = scheme.getProjectConfigs();
    if (null != projectConfigs && !projectConfigs.isEmpty()) {
        List<ProjectVO> projectVOS = new ArrayList<>(projectConfigs.size());
        for (ProjectConfigDTO config : projectConfigs) {
            ProjectVO projectVO = projectMap.get(config.getProjectId());
            if (projectVO != null) {
                projectVOS.add(projectVO);
            }
        }
        schemeVO.setProjectVOS(projectVOS);
    }
    return schemeVO;
}
Also used : StatusMachineSchemeConfigDTO(io.choerodon.agile.infra.dto.StatusMachineSchemeConfigDTO) TypeToken(org.modelmapper.TypeToken) ProjectConfigDTO(io.choerodon.agile.infra.dto.ProjectConfigDTO) ArrayList(java.util.ArrayList) StatusMachineSchemeConfigVO(io.choerodon.agile.api.vo.StatusMachineSchemeConfigVO) StateMachineSchemeVO(io.choerodon.agile.api.vo.StateMachineSchemeVO) ProjectVO(io.choerodon.agile.api.vo.ProjectVO) ModelMapper(org.modelmapper.ModelMapper)

Aggregations

ProjectVO (io.choerodon.agile.api.vo.ProjectVO)1 StateMachineSchemeVO (io.choerodon.agile.api.vo.StateMachineSchemeVO)1 StatusMachineSchemeConfigVO (io.choerodon.agile.api.vo.StatusMachineSchemeConfigVO)1 ProjectConfigDTO (io.choerodon.agile.infra.dto.ProjectConfigDTO)1 StatusMachineSchemeConfigDTO (io.choerodon.agile.infra.dto.StatusMachineSchemeConfigDTO)1 ArrayList (java.util.ArrayList)1 ModelMapper (org.modelmapper.ModelMapper)1 TypeToken (org.modelmapper.TypeToken)1