package org.qinan.safetyeval.infrastructure.convertor;

import org.mapstruct.Mapper;
import org.qinan.safetyeval.client.change.request.QualFilingPersonnelChangePageQry;
import org.qinan.safetyeval.client.change.response.QualFilingPersonnelChangeCo;
import org.qinan.safetyeval.domain.change.model.QualFilingPersonnelChangeE;
import org.qinan.safetyeval.infrastructure.persistence.domainobject.QualFilingPersonnelChangeDO;

import java.util.List;


/**
 * 备案申请人员-变更对象转换
 *
 * @Author: ltq
 * @date 2026-07-02 10:04:33
 */
@Mapper(componentModel = "spring")
public interface QualFilingPersonnelChangeDoConvertor {
    /**
     * 领域对象转DO
     *
     * @param qualFilingPersonnelChangeE
     * @return
     */
    QualFilingPersonnelChangeDO convertEeToDo(QualFilingPersonnelChangeE qualFilingPersonnelChangeE);

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

    QualFilingPersonnelChangeCo converDoToCo(QualFilingPersonnelChangeDO qualFilingPersonnelChangeDo);

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

    QualFilingPersonnelChangeDO convertQryToDo(QualFilingPersonnelChangePageQry qualFilingPersonnelChangePageQry);

    /**
     * DOs转Cos
     *
     * @param qualFilingPersonnelChangeDos dos
     * @return
     */
    List<QualFilingPersonnelChangeCo> converDosToCos(List<QualFilingPersonnelChangeDO> qualFilingPersonnelChangeDos);

    /**
     * DO转领域对象
     */
    QualFilingPersonnelChangeE converDoToEe(QualFilingPersonnelChangeDO qualFilingPersonnelChangeDO);

    /**
     * DOs转领域对象列表
     */
    List<QualFilingPersonnelChangeE> converDosToEes(List<QualFilingPersonnelChangeDO> qualFilingPersonnelChangeDOs);
}
