ConvertUtil.java 3.81 KB
Newer Older
刘基明's avatar
刘基明 committed
1 2
package com.tanpu.community.util;

刘基明's avatar
刘基明 committed
3 4 5
import com.tanpu.community.api.beans.qo.FollowQo;
import com.tanpu.community.api.beans.req.CreateThemeReq;
import com.tanpu.community.api.beans.qo.ThemeQo;
刘基明's avatar
刘基明 committed
6
import com.tanpu.community.api.beans.TopicBriefInfoDTO;
刘基明's avatar
刘基明 committed
7
import com.tanpu.community.api.beans.TopicDTO;
刘基明's avatar
刘基明 committed
8
import com.tanpu.community.api.enums.DeleteTagEnum;
刘基明's avatar
刘基明 committed
9
import com.tanpu.community.dao.entity.community.HomePageEntity;
刘基明's avatar
刘基明 committed
10
import com.tanpu.community.dao.entity.community.ThemeAttachmentEntity;
刘基明's avatar
刘基明 committed
11 12 13 14
import com.tanpu.community.dao.entity.community.ThemeEntity;
import com.tanpu.community.dao.entity.community.TopicEntity;
import org.springframework.beans.BeanUtils;

刘基明's avatar
刘基明 committed
15 16
import java.util.ArrayList;
import java.util.Collections;
刘基明's avatar
刘基明 committed
17 18 19 20 21
import java.util.List;
import java.util.stream.Collectors;

public class ConvertUtil {

刘基明's avatar
刘基明 committed
22 23 24 25
    public static ThemeQo themeEntityToDTO(ThemeEntity themeEntity) {
        ThemeQo themeQO = new ThemeQo();
        BeanUtils.copyProperties(themeEntity, themeQO);
        return themeQO;
刘基明's avatar
刘基明 committed
26 27 28
    }


刘基明's avatar
刘基明 committed
29
    public static ThemeEntity themeDTOToEntity(ThemeQo themeQO) {
刘基明's avatar
刘基明 committed
30
        ThemeEntity themeEntity = new ThemeEntity();
刘基明's avatar
刘基明 committed
31
        BeanUtils.copyProperties(themeQO, themeEntity);
刘基明's avatar
刘基明 committed
32 33 34
        return themeEntity;
    }

刘基明's avatar
刘基明 committed
35
    public static List<ThemeQo> themeEntitiesToDTOs(List<ThemeEntity> themeEntities) {
刘基明's avatar
刘基明 committed
36 37 38 39
        return themeEntities.stream().map(ConvertUtil::themeEntityToDTO).collect(Collectors.toList());
    }


刘基明's avatar
刘基明 committed
40 41
    public static List<ThemeEntity> themeDTOSToEntitys(List<ThemeQo> themeQos) {
        return themeQos.stream().map(ConvertUtil::themeDTOToEntity).collect(Collectors.toList());
刘基明's avatar
刘基明 committed
42 43 44
    }


刘基明's avatar
刘基明 committed
45
    public static TopicDTO topicEntityToDTO(TopicEntity topicEntity) {
刘基明's avatar
刘基明 committed
46
        TopicDTO topicDTO = new TopicDTO();
刘基明's avatar
刘基明 committed
47
        BeanUtils.copyProperties(topicEntity, topicDTO);
刘基明's avatar
刘基明 committed
48 49 50
        return topicDTO;
    }

刘基明's avatar
刘基明 committed
51
    public static TopicBriefInfoDTO topicToBriefInfoDTO(TopicEntity topicEntity) {
刘基明's avatar
刘基明 committed
52
        TopicBriefInfoDTO topicBriefInfoDTO = new TopicBriefInfoDTO();
刘基明's avatar
刘基明 committed
53
        BeanUtils.copyProperties(topicEntity, topicBriefInfoDTO);
刘基明's avatar
刘基明 committed
54 55 56
        return topicBriefInfoDTO;
    }

刘基明's avatar
刘基明 committed
57
    public static List<TopicDTO> topicEntitiesToDTOs(List<TopicEntity> topicEntities) {
刘基明's avatar
刘基明 committed
58 59
        return topicEntities.stream().map(ConvertUtil::topicEntityToDTO).collect(Collectors.toList());
    }
刘基明's avatar
刘基明 committed
60 61 62 63

    public static List<TopicBriefInfoDTO> topicEntitiesToBriefDTOs(List<TopicEntity> topicEntities) {
        return topicEntities.stream().map(ConvertUtil::topicToBriefInfoDTO).collect(Collectors.toList());
    }
刘基明's avatar
刘基明 committed
64 65 66 67

    public static DeleteTagEnum deleteTagShift(DeleteTagEnum deleteTagEnum) {
        if (deleteTagEnum.getCode().equals(DeleteTagEnum.NOT_DELETED.getCode())) {
            return DeleteTagEnum.DELETED;
刘基明's avatar
刘基明 committed
68
        } else {
刘基明's avatar
刘基明 committed
69 70 71 72 73 74 75
            return DeleteTagEnum.NOT_DELETED;
        }
    }

    public static Integer deleteTagShift(Integer deleteTag) {
        if (deleteTag.equals(DeleteTagEnum.NOT_DELETED.getCode())) {
            return DeleteTagEnum.DELETED.getCode();
刘基明's avatar
刘基明 committed
76
        } else {
刘基明's avatar
刘基明 committed
77 78 79
            return DeleteTagEnum.NOT_DELETED.getCode();
        }
    }
刘基明's avatar
刘基明 committed
80

刘基明's avatar
刘基明 committed
81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105
    public static List<ThemeAttachmentEntity> themeReqToAttachmentList(CreateThemeReq req, String themeId) {
        if (req == null || req.getAttachment() == null || req.getAttachment().size() == 0) {
            return Collections.emptyList();
        }
        List<ThemeAttachmentEntity> list = new ArrayList<>();
        req.getAttachment().forEach((k, v) -> {
            list.add(ThemeAttachmentEntity.builder()
                    .attachType(Integer.valueOf(k))
                    .attchId(v)
                    .themeId(themeId)
                    .build());
        });
        return list;
    }

    public static FollowQo homePageEntity2FollowQo(HomePageEntity entity) {
        if (entity == null) {
            return null;
        }
        FollowQo followQo = new FollowQo();
        BeanUtils.copyProperties(entity, followQo);
        return followQo;
    }


刘基明's avatar
刘基明 committed
106
}