package com.jwipc.finance.convert;

import com.jwipc.finance.dto.*;
import com.jwipc.finance.entity.PaymentAdvanceApply;
import com.jwipc.finance.entity.PaymentAdvanceApplyDetail;
import com.jwipc.finance.entity.PaymentAdvanceRefundTransferApply;
import com.jwipc.finance.entity.PaymentAdvanceRefundTransferApplyDetail;
import com.jwipc.finance.model.po.*;
import org.mapstruct.Mapper;

import java.util.List;

/**
 * @author qzc
 * @date 2025/07/21 14:31
 */
@Mapper(componentModel = "spring")
public interface PaymentAdvanceRefundTransferApplyConvert {
    List<PaymentAdvanceRefundTransferApplyBaseDTO> POToDTOList(List<PaymentAdvanceRefundTransferApply> poList);

    PaymentAdvanceRefundTransferApplyListDTO poToDto(PaymentAdvanceRefundTransferApplyPO advanceApply);

    List<PaymentAdvanceRefundTransferApplyAndDetailListDTO> POToDtoDetailList(List<PaymentAdvanceRefundTransferApplyDetailPO> poList);

    PaymentAdvanceRefundTransferApplyDetail detailDtoToPO(PaymentAdvanceRefundTransferApplySaveDto.PaymentAdvanceRefundTransferApplyDetail paymentAdvanceRefundTransferApplyDetail);

    PaymentAdvanceRefundTransferApply dtoToEntity(PaymentAdvanceRefundTransferApplyBaseDTO advanceRefundTransferApply);

    List<PaymentAdvanceRefundTransferApplyAndDetailListDTO> detailToDTOList(List<PaymentAdvanceRefundTransferApplyDetail> poList);

}
