package org.qinan.safetyeval.infrastructure.convertor;

import org.mapstruct.Mapper;
import org.qinan.safetyeval.client.change.request.QualFilingCommitmentChangePageQry;
import org.qinan.safetyeval.client.change.response.QualFilingCommitmentChangeCo;
import org.qinan.safetyeval.domain.change.model.QualFilingCommitmentChangeE;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualFilingCommitmentChangeDO;

import java.util.List;


/**
 * 法定代人承诺书-变更对象转换
 *
 * @Author: ltq
 * @date 2026-07-02 09:38:30
 */
@Mapper(componentModel = "spring")
public interface QualFilingCommitmentChangeDoConvertor {
    /**
     * 领域对象转DO
     *
     * @param qualFilingCommitmentChangeE
     * @return
     */
    QualFilingCommitmentChangeDO convertEeToDo(QualFilingCommitmentChangeE qualFilingCommitmentChangeE);

    /**
     * DO转Co
     *
     * @param qualFilingCommitmentChangeDo DO
     * @return
     */

    QualFilingCommitmentChangeCo converDoToCo(QualFilingCommitmentChangeDO qualFilingCommitmentChangeDo);

    /**
     * qry TO DO
     *
     * @param qualFilingCommitmentChangePageQry
     * @return
     */

    QualFilingCommitmentChangeDO convertQryToDo(QualFilingCommitmentChangePageQry qualFilingCommitmentChangePageQry);

    /**
     * DOs转Cos
     *
     * @param qualFilingCommitmentChangeDos dos
     * @return
     */
    List<QualFilingCommitmentChangeCo> converDosToCos(List<QualFilingCommitmentChangeDO> qualFilingCommitmentChangeDos);

    /**
     * DO转领域对象
     */
    QualFilingCommitmentChangeE converDoToEe(QualFilingCommitmentChangeDO qualFilingCommitmentChangeDO);

    /**
     * DOs转领域对象列表
     */
    List<QualFilingCommitmentChangeE> converDosToEes(List<QualFilingCommitmentChangeDO> qualFilingCommitmentChangeDOs);
}
