package cn.iocoder.yudao.module.chain.convert.blockcertificate;

import java.util.*;

import cn.iocoder.yudao.framework.common.pojo.PageResult;

import cn.iocoder.yudao.module.chain.api.blockcertificate.dto.BlockCertificateCreateReqDTO;
import cn.iocoder.yudao.module.chain.api.blockcertificate.dto.BlockCertificateReqDTO;
import cn.iocoder.yudao.module.chain.api.blockcertificate.dto.BlockCertificateRespDTO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import cn.iocoder.yudao.module.chain.controller.admin.blockcertificate.vo.*;
import cn.iocoder.yudao.module.chain.dal.dataobject.blockcertificate.BlockCertificateDO;

/**
 * 区块证书 Convert
 *
 * @author 芋道源码
 */
@Mapper
public interface BlockCertificateConvert {

    BlockCertificateConvert INSTANCE = Mappers.getMapper(BlockCertificateConvert.class);


    BlockCertificateDO convert(BlockCertificateUpdateReqVO bean);

    BlockCertificateRespVO convert(BlockCertificateDO bean);

    BlockCertificateReqVO convertToReq(BlockCertificateReqDTO bean);

    List<BlockCertificateCreateReqVO> convertToCreateReqList(List<BlockCertificateCreateReqDTO> list);

    List<BlockCertificateRespVO> convertList(List<BlockCertificateDO> list);

    List<BlockCertificateRespDTO> convertDOToDTOList(List<BlockCertificateDO> list);

    List<BlockCertificateRespDTO> convertToDTOList(List<BlockCertificateRespVO> list);

    List<BlockCertificateDO> convertToDOList(List<BlockCertificateUpdateReqVO> list);

    PageResult<BlockCertificateRespVO> convertPage(PageResult<BlockCertificateDO> page);

}
