admin
2024-10-30 010ef2a907e66efd4702443c06cdd18f8a7ffa5b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
package com.yeshi.buwan.util.factory.ad;
 
import com.yeshi.buwan.domain.ad.AdAreaConfig;
import com.yeshi.buwan.domain.system.DetailSystem;
import com.yeshi.buwan.dto.ad.AdAreaConfigDto;
import com.yeshi.buwan.util.StringUtil;
import com.yeshi.buwan.vo.ad.AdConfigTypeVO;
 
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
 
/**
 * @author hxh
 * @title: AdAreaConfigFactory
 * @description: 广告区域配置工厂
 * @date 2024/10/24 11:25
 */
public class AdAreaConfigFactory {
 
    public static AdAreaConfigDto createDTO(AdAreaConfig bean) {
        AdAreaConfigDto dto = new AdAreaConfigDto();
        dto.setId(bean.getId());
        dto.setDetailSystem(new DetailSystem(bean.getDetailSystemId() + ""));
        dto.setChannel(bean.getChannel());
        dto.setAdType(bean.getAdType());
        if (!StringUtil.isNullOrEmpty(bean.getProvinces())) {
            dto.setProvinces(Arrays.asList(bean.getProvinces().split(",")));
        }
        if (!StringUtil.isNullOrEmpty(bean.getCitys())) {
            dto.setCitys(Arrays.asList(bean.getCitys().split(",")));
        }
        if (!StringUtil.isNullOrEmpty(bean.getPositions())) {
            List<AdConfigTypeVO> positionList = new ArrayList<>();
            String[] ps = bean.getPositions().split(",");
            for (String p : ps) {
                positionList.add(AdConfigTypeVO.valueOf(p));
            }
            dto.setPositions(positionList);
        }
        dto.setStartTime(bean.getStartTime());
        dto.setEndTime(bean.getEndTime());
        dto.setCreateTime(bean.getCreateTime());
        dto.setUpdateTime(bean.getUpdateTime());
        return dto;
    }
 
    public static AdAreaConfig createBean(AdAreaConfigDto dto) {
        AdAreaConfig bean = new AdAreaConfig();
        bean.setId(dto.getId());
        if (dto.getDetailSystem() != null) {
            bean.setDetailSystemId(Long.parseLong(dto.getDetailSystem().getId()));
        }
        bean.setChannel(dto.getChannel());
        bean.setAdType(dto.getAdType());
        if (dto.getProvinces() != null) {
            bean.setProvinces(StringUtil.join(dto.getProvinces(), ","));
        }
        if (dto.getCitys() != null) {
            bean.setCitys(StringUtil.join(dto.getCitys(), ","));
        }
        if (dto.getPositions() != null) {
            List<String> positionList = new ArrayList<>();
            for (AdConfigTypeVO p : dto.getPositions()) {
                positionList.add(p.name());
            }
            bean.setPositions(StringUtil.join(positionList, ","));
        }
        bean.setStartTime(dto.getStartTime());
        bean.setEndTime(dto.getEndTime());
        bean.setCreateTime(dto.getCreateTime());
        bean.setUpdateTime(dto.getUpdateTime());
        return bean;
    }
 
 
}