package com.vci.ubcs.omd.wrapper; import com.vci.ubcs.omd.constant.BtmTypeConstant; import com.vci.ubcs.omd.entity.LinkType; import com.vci.ubcs.omd.vo.LinkTypeVO; import org.springblade.core.mp.support.BaseEntityWrapper; import org.springblade.core.tool.utils.BeanUtil; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Optional; import java.util.stream.Collectors; /** * Description: 链接类型的包装类 * * @author LiHang * @date 2023/5/24 */ public class LinkTypeWrapper extends BaseEntityWrapper{ public static LinkTypeWrapper build() { return new LinkTypeWrapper(); } @Override public LinkTypeVO entityVO(LinkType entity) { LinkTypeVO vo = BeanUtil.copy(entity, LinkTypeVO.class); // 枚举处理 return vo; } public List listEntityVO(List entityList){ return Optional.ofNullable(entityList).orElseGet(ArrayList::new).stream().map(this::entityVO).collect(Collectors.toList()); } public void copyLinkTypeVO2DO(LinkTypeVO linkTypeVO, LinkType linkTypeDO, String creator, Date now) { //有可能大小写变化了 linkTypeDO.setId(linkTypeVO.getId()); linkTypeDO.setName(linkTypeVO.getName()); linkTypeDO.setDescription(linkTypeVO.getDescription()); linkTypeDO.setImplClass(linkTypeVO.getImplClass()); linkTypeDO.setShape(linkTypeVO.getShape()); linkTypeDO.setFromBtmType(linkTypeVO.getToBtmType()); linkTypeDO.setFromBtmTypeName(linkTypeVO.getFromBtmTypeName()); linkTypeDO.setToBtmType(linkTypeVO.getToBtmType()); linkTypeDO.setToBtmTypeName(linkTypeVO.getToBtmTypeName()); linkTypeDO.setTs(now); linkTypeDO.setLastModifier(creator); linkTypeDO.setLastModifyTime(now); linkTypeDO.setBtmName(BtmTypeConstant.LINK_TYPE); } }