package org.qinan.safetyeval.domain.gateway;

import org.qinan.safetyeval.domain.entity.QualFilingCommitmentEntity;
import org.qinan.safetyeval.domain.query.QualFilingCommitmentQuery;
import org.qinan.safetyeval.domain.query.PageResult;

/**
 * 法定代表人承诺书Gateway接口（Domain层定义）
 *
 * @author safety-eval
 */
public interface QualFilingCommitmentGateway {

    QualFilingCommitmentEntity save(QualFilingCommitmentEntity entity);

    QualFilingCommitmentEntity get(Long id);

    QualFilingCommitmentEntity getByFilingId(Long filingId);

    QualFilingCommitmentEntity modify(QualFilingCommitmentEntity entity);

    void delete(Long id);

    /** 按备案单物理删除承诺书（变更审核通过替换子表时使用） */
    void physicalDeleteByFilingId(Long filingId);

    PageResult<QualFilingCommitmentEntity> page(QualFilingCommitmentQuery query);
}
