package com.jwipc.contract.convert;

import com.jwipc.contract.dto.*;
import com.jwipc.contract.entity.*;
import com.jwipc.contract.model.po.ContractDetailPO;
import com.jwipc.contract.model.po.ContractPayStagePO;
import com.jwipc.contract.model.po.ContractReportPO;
import org.mapstruct.Mapper;

import java.util.List;

/**
 * 功能描述:
 *
 * @Author: zx
 * @Date: 2024/3/7 0007 17:24
 */
@Mapper(componentModel = "spring")
public interface ContractConvert {

    List<ContractDTO> entitiesPoToDto(List<Contract> list);
    List<ContractDetailDTO> detailPOToDTOList(List<ContractDetailPO> list);


    ContractDTO entitiePoToDto(Contract bean);


    ContractPayDTO entitiePoToDto(ContractPay bean);

    ContractMroDTO entitieMroPoToDto(ContractDetailMro bean);

    ContractPay entitieDtoToPo(ContractPayDTO bean);

    ContractDetailDTO entitieDtoToPo(ContractDetail bean);

    ContractPayStageDTO contractPayStageEntitiePoToDTO(ContractPayStage bean);

    List<ContractPayOrderDTO> contractPayOrderEntitieDtoToPo(List<ContractPayOrder> bean);

    List<ContractPayTypeDTO> contractPayTypeEntitieDtoToPo(List<ContractPayType> bean);


    List<ContractCategoryDTO> contractCategoryEntitieDtoToPo(List<ContractCategory> bean);

    List<ContractDetailMroDTO> contractMroEntitieDtoToPo(List<ContractDetailMro> bean);

    List<ContractReportDTO> reportPO2DTOList(List<ContractReportPO> contractReportPOS);

    List<ContractDetailDTO> entitieToDTOList(List<ContractDetail> contractDetail);

    ContractPrintDTO enToPrintDto(Contract bean);

    List<ContractItemPrintDTO> entitieToPrintDTOList(List<ContractDetail> contractDetail);


}
