田源
2023-05-09 d2570148ec3884de3af721bd99c4b7acbbdee075
Source/UBCS/ubcs-service/ubcs-omd/src/main/java/com/vci/ubcs/omd/wrapper/BtmTypeWrapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,95 @@
package com.vci.ubcs.omd.wrapper;
import com.vci.ubcs.omd.dto.BtmTypeDTO;
import com.vci.ubcs.omd.entity.BtmType;
import com.vci.ubcs.omd.vo.BtmTypeVO;
import com.vci.ubcs.starter.web.enumpck.BooleanEnum;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.BeanUtil;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
 * Description:
 *
 * @author LiHang
 * @date 2023/4/23
 */
public class BtmTypeWrapper extends BaseEntityWrapper<BtmType, BtmTypeVO> {
   public static BtmTypeWrapper build() {
      return new BtmTypeWrapper();
   }
   /**
    * do2vo
    * @param entity pojo
    * @return æ˜¾ç¤ºå¯¹è±¡
    */
   @Override
   public BtmTypeVO entityVO(BtmType entity) {
      BtmTypeVO vo = Objects.requireNonNull(BeanUtil.copy(entity, BtmTypeVO.class));
      // åœ¨è¿™é‡Œè®¾ç½®æžšä¸¾æ˜¾ç¤ºå€¼
      vo.setRevisionFlag(BooleanEnum.TRUE.getValue().equals(entity.getRevisionFlag()));
      vo.setSecretFlag(BooleanEnum.TRUE.getValue().equals(entity.getSecretFlag()));
      vo.setLifeCycleFlag(BooleanEnum.TRUE.getValue().equals(entity.getLifeCycleFlag()));
      vo.setInputRevisionFlag(BooleanEnum.TRUE.getValue().equals(entity.getInputRevisionFlag()));
      vo.setViewFlag(BooleanEnum.TRUE.getValue().equalsIgnoreCase(entity.getViewFlag()));
      vo.setAbstractFlag(BooleanEnum.TRUE.getValue().equals(entity.getAbstractFlag()));
      return vo;
   }
   /**
    * æ‰¹é‡è½¬vo
    * @param list pojo集合
    * @return æ˜¾ç¤ºå¯¹è±¡
    */
   public List<BtmTypeVO> listEntityVO(List<BtmType> list) {
      return list.stream().map(this::entityVO).collect(Collectors.toList());
   }
   /**
    * æ‹·è´ä¸šåŠ¡ç±»åž‹ æ•°æ®ä¼ è¾“对象到 æ•°æ®å¯¹è±¡
    *
    * @param dto ä¸šåŠ¡ç±»åž‹æ•°æ®ä¼ è¾“å¯¹è±¡
    * @param creator    åˆ›å»ºäºº
    * @param now        å½“æ—¶æ—¶é—´
    */
   public BtmType copyBtmTypeDTO2Entity(BtmTypeDTO dto, String creator, Date now){
      BtmType entity = Objects.requireNonNull(BeanUtil.copy(dto, BtmType.class));
      entity.setLastModifier(creator);
      entity.setTs(now);
      // åœ¨è¿™è¿›è¡Œé€šç”¨å­—段处理
      return entity;
   }
   public BtmType entityBeforeInsert(BtmType btmType) {
      btmType = entityBeforeSave(btmType);
      String userAccount = AuthUtil.getUserAccount();
      btmType.setOwner(userAccount);
      btmType.setCreator(userAccount);
      Date now = new Date();
      btmType.setCreateTime(now);
      return btmType;
   }
   /**
    * æ’入前包装默认字段
    * @param btmTypeDO do数据
    * @return åŒ…装后
    */
   public BtmType entityBeforeSave(BtmType btmTypeDO) {
      btmTypeDO.setOid(VciBaseUtil.getPk());
      btmTypeDO.setBtmname("btmType");
      Date now  = new Date();
      String userAccount = AuthUtil.getUserAccount();
      btmTypeDO.setLastModifier(userAccount);
      btmTypeDO.setLastModifyTime(now);
      btmTypeDO.setTs(now);
      return btmTypeDO;
   }
}