package cn.iocoder.yudao.module.flow.convert.outboundgoods;

import java.util.*;

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

import cn.iocoder.yudao.module.flow.api.outboundgoods.dto.OutboundgoodsRespDTO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import cn.iocoder.yudao.module.flow.controller.admin.outboundgoods.vo.*;
import cn.iocoder.yudao.module.flow.dal.dataobject.outboundgoods.OutboundGoodsDO;

/**
 * 出库单商品 Convert
 *
 * @author 芋道源码
 */
@Mapper
public interface OutboundGoodsConvert {

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

    OutboundGoodsDO convert(OutboundGoodsCreateReqVO bean);

    OutboundGoodsDO convert(OutboundGoodsSaveReqVO bean);

    OutboundGoodsDO convert(OutboundGoodsUpdateReqVO bean);

    OutboundGoodsRespVO convert(OutboundGoodsDO bean);

    List<OutboundGoodsRespVO> convertList(List<OutboundGoodsDO> list);

    PageResult<OutboundGoodsRespVO> convertPage(PageResult<OutboundGoodsDO> page);

    List<OutboundGoodsExcelVO> convertList02(List<OutboundGoodsDO> list);

    List<OutboundGoodsDO> convertListCreate(List<OutboundGoodsSaveReqVO> list);

    List<OutboundgoodsRespDTO> convertToDTOList(List<OutboundGoodsDO>list);

}
