package cn.iocoder.yudao.module.product.convert.harvestbatch;

import java.util.*;

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

import cn.iocoder.yudao.module.product.api.harvestbatch.dto.HarvestBatchDTO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import cn.iocoder.yudao.module.product.controller.admin.harvestbatch.vo.*;
import cn.iocoder.yudao.module.product.dal.dataobject.harvestbatch.HarvestBatchDO;

/**
 * 采收批次 Convert
 *
 * @author 芋道源码
 */
@Mapper
public interface HarvestBatchConvert {

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

    HarvestBatchDO convert(HarvestBatchUpdateReqVO bean);

    HarvestBatchRespVO convert(HarvestBatchDO bean);

    HarvestBatchDO convert(HarvestBatchSaveReqVO bean);

    HarvestBatchDTO convertDTO(HarvestBatchDO bean);

    List<HarvestBatchRespVO> convertList(List<HarvestBatchDO> list);

    PageResult<HarvestBatchRespVO> convertPage(PageResult<HarvestBatchDO> page);

    List<HarvestBatchDTO> convertListDTO(List<HarvestBatchDO> list);

    List<HarvestBatchDO> convertListForCreate(List<HarvestBatchSaveReqVO> list);

    List<LinkFileVO> convertToFileVOList(List<BlockCertificateSaveReqVO> list);

}
