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;
|
}
|
|
|
}
|